home *** CD-ROM | disk | FTP | other *** search
Text File | 2019-10-20 | 138.1 KB | 4,186 lines |
- //////////////////////////////////////////
- //
- // NOTE: This is *not* a valid shader file
- //
- ///////////////////////////////////////////
- Shader "Custom/Test4" {
- Properties {
- _MainTex ("Texture", 2D) = "white" { }
- _BumpMap ("Bump", 2D) = "bump" { }
- _SpecTex ("Specular Map (R)", 2D) = "white" { }
- _Cube ("ReflectionMap", CUBE) = "" { }
- _SmoothnessIntensity ("Smoothness Intensity(R)", Range(0,1)) = 0
- _MetallicIntensity ("Metallic Intensity(G)", Range(0,1)) = 0
- _Cubepower ("Cubepower", Range(0,1)) = 0.5
- }
- SubShader {
- Tags { "RenderType"="Opaque" }
- Pass {
- Name "FORWARD"
- Tags { "LIGHTMODE"="ForwardBase" "RenderType"="Opaque" }
- GpuProgramID 52711
- Program "vp" {
- SubProgram "gles " {
- Keywords { "DIRECTIONAL" "SHADOWS_OFF" "LIGHTMAP_OFF" "DIRLIGHTMAP_OFF" "DYNAMICLIGHTMAP_OFF" }
- "!!GLES
- #version 100
-
- #ifdef VERTEX
- attribute vec4 _glesTANGENT;
- attribute vec4 _glesVertex;
- attribute vec3 _glesNormal;
- attribute vec4 _glesMultiTexCoord0;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform highp mat4 glstate_matrix_mvp;
- uniform highp mat4 _Object2World;
- uniform highp mat4 _World2Object;
- uniform highp vec4 unity_WorldTransformParams;
- uniform highp vec4 _MainTex_ST;
- uniform highp vec4 _BumpMap_ST;
- varying highp vec4 xlv_TEXCOORD0;
- varying highp vec4 xlv_TEXCOORD1;
- varying highp vec4 xlv_TEXCOORD2;
- varying highp vec4 xlv_TEXCOORD3;
- varying mediump vec3 xlv_TEXCOORD4;
- void main ()
- {
- lowp float tangentSign_1;
- lowp vec3 worldTangent_2;
- lowp vec3 worldNormal_3;
- highp vec4 tmpvar_4;
- tmpvar_4.xy = ((_glesMultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
- tmpvar_4.zw = ((_glesMultiTexCoord0.xy * _BumpMap_ST.xy) + _BumpMap_ST.zw);
- highp vec3 tmpvar_5;
- tmpvar_5 = (_Object2World * _glesVertex).xyz;
- highp vec4 v_6;
- v_6.x = _World2Object[0].x;
- v_6.y = _World2Object[1].x;
- v_6.z = _World2Object[2].x;
- v_6.w = _World2Object[3].x;
- highp vec4 v_7;
- v_7.x = _World2Object[0].y;
- v_7.y = _World2Object[1].y;
- v_7.z = _World2Object[2].y;
- v_7.w = _World2Object[3].y;
- highp vec4 v_8;
- v_8.x = _World2Object[0].z;
- v_8.y = _World2Object[1].z;
- v_8.z = _World2Object[2].z;
- v_8.w = _World2Object[3].z;
- highp vec3 tmpvar_9;
- tmpvar_9 = normalize(((
- (v_6.xyz * _glesNormal.x)
- +
- (v_7.xyz * _glesNormal.y)
- ) + (v_8.xyz * _glesNormal.z)));
- worldNormal_3 = tmpvar_9;
- highp mat3 tmpvar_10;
- tmpvar_10[0] = _Object2World[0].xyz;
- tmpvar_10[1] = _Object2World[1].xyz;
- tmpvar_10[2] = _Object2World[2].xyz;
- highp vec3 tmpvar_11;
- tmpvar_11 = normalize((tmpvar_10 * _glesTANGENT.xyz));
- worldTangent_2 = tmpvar_11;
- highp float tmpvar_12;
- tmpvar_12 = (_glesTANGENT.w * unity_WorldTransformParams.w);
- tangentSign_1 = tmpvar_12;
- lowp vec3 tmpvar_13;
- tmpvar_13 = (((worldNormal_3.yzx * worldTangent_2.zxy) - (worldNormal_3.zxy * worldTangent_2.yzx)) * tangentSign_1);
- highp vec4 tmpvar_14;
- tmpvar_14.x = worldTangent_2.x;
- tmpvar_14.y = tmpvar_13.x;
- tmpvar_14.z = worldNormal_3.x;
- tmpvar_14.w = tmpvar_5.x;
- highp vec4 tmpvar_15;
- tmpvar_15.x = worldTangent_2.y;
- tmpvar_15.y = tmpvar_13.y;
- tmpvar_15.z = worldNormal_3.y;
- tmpvar_15.w = tmpvar_5.y;
- highp vec4 tmpvar_16;
- tmpvar_16.x = worldTangent_2.z;
- tmpvar_16.y = tmpvar_13.z;
- tmpvar_16.z = worldNormal_3.z;
- tmpvar_16.w = tmpvar_5.z;
- lowp vec4 tmpvar_17;
- tmpvar_17.w = 1.0;
- tmpvar_17.xyz = worldNormal_3;
- mediump vec4 normal_18;
- normal_18 = tmpvar_17;
- mediump vec3 x2_19;
- mediump vec4 tmpvar_20;
- tmpvar_20 = (normal_18.xyzz * normal_18.yzzx);
- x2_19.x = dot (unity_SHBr, tmpvar_20);
- x2_19.y = dot (unity_SHBg, tmpvar_20);
- x2_19.z = dot (unity_SHBb, tmpvar_20);
- gl_Position = (glstate_matrix_mvp * _glesVertex);
- xlv_TEXCOORD0 = tmpvar_4;
- xlv_TEXCOORD1 = tmpvar_14;
- xlv_TEXCOORD2 = tmpvar_15;
- xlv_TEXCOORD3 = tmpvar_16;
- xlv_TEXCOORD4 = (x2_19 + (unity_SHC.xyz * (
- (normal_18.x * normal_18.x)
- -
- (normal_18.y * normal_18.y)
- )));
- }
-
-
- #endif
- #ifdef FRAGMENT
- #extension GL_EXT_shader_texture_lod : enable
- lowp vec4 impl_low_textureCubeLodEXT(lowp samplerCube sampler, highp vec3 coord, mediump float lod)
- {
- #if defined(GL_EXT_shader_texture_lod)
- return textureCubeLodEXT(sampler, coord, lod);
- #else
- return textureCube(sampler, coord, lod);
- #endif
- }
-
- uniform highp vec3 _WorldSpaceCameraPos;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform lowp samplerCube unity_SpecCube0;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform lowp vec4 _LightColor0;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform sampler2D _MainTex;
- uniform sampler2D _BumpMap;
- uniform sampler2D _SpecTex;
- uniform lowp samplerCube _Cube;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- varying highp vec4 xlv_TEXCOORD0;
- varying highp vec4 xlv_TEXCOORD1;
- varying highp vec4 xlv_TEXCOORD2;
- varying highp vec4 xlv_TEXCOORD3;
- varying mediump vec3 xlv_TEXCOORD4;
- void main ()
- {
- mediump vec3 tmpvar_1;
- highp vec4 tmpvar_2;
- mediump vec3 tmpvar_3;
- mediump vec3 tmpvar_4;
- lowp vec3 worldN_5;
- lowp vec4 c_6;
- lowp vec3 worldViewDir_7;
- lowp vec3 lightDir_8;
- highp vec3 tmpvar_9;
- mediump vec3 tmpvar_10;
- mediump vec3 tmpvar_11;
- mediump vec3 tmpvar_12;
- highp vec3 tmpvar_13;
- tmpvar_13.x = xlv_TEXCOORD1.w;
- tmpvar_13.y = xlv_TEXCOORD2.w;
- tmpvar_13.z = xlv_TEXCOORD3.w;
- mediump vec3 tmpvar_14;
- tmpvar_14 = _WorldSpaceLightPos0.xyz;
- lightDir_8 = tmpvar_14;
- highp vec3 tmpvar_15;
- tmpvar_15 = normalize((_WorldSpaceCameraPos - tmpvar_13));
- worldViewDir_7 = tmpvar_15;
- tmpvar_9 = -(worldViewDir_7);
- tmpvar_10 = xlv_TEXCOORD1.xyz;
- tmpvar_11 = xlv_TEXCOORD2.xyz;
- tmpvar_12 = xlv_TEXCOORD3.xyz;
- lowp vec3 tmpvar_16;
- mediump vec3 tmpvar_17;
- mediump float tmpvar_18;
- mediump float tmpvar_19;
- lowp vec3 tmpvar_20;
- tmpvar_20 = ((texture2D (_BumpMap, xlv_TEXCOORD0.zw).xyz * 2.0) - 1.0);
- lowp vec4 tmpvar_21;
- tmpvar_21 = texture2D (_SpecTex, xlv_TEXCOORD0.xy);
- tmpvar_16 = texture2D (_MainTex, xlv_TEXCOORD0.xy).xyz;
- tmpvar_19 = (tmpvar_21.x * _SmoothnessIntensity);
- tmpvar_18 = (tmpvar_21.y * _MetallicIntensity);
- mediump vec3 tmpvar_22;
- tmpvar_22.x = dot (tmpvar_10, tmpvar_20);
- tmpvar_22.y = dot (tmpvar_11, tmpvar_20);
- tmpvar_22.z = dot (tmpvar_12, tmpvar_20);
- highp vec3 tmpvar_23;
- tmpvar_23 = (tmpvar_9 - (2.0 * (
- dot (tmpvar_22, tmpvar_9)
- * tmpvar_22)));
- lowp vec4 tmpvar_24;
- tmpvar_24 = textureCube (_Cube, tmpvar_23);
- tmpvar_17 = ((tmpvar_24.xyz * tmpvar_21.z) * _Cubepower);
- highp float tmpvar_25;
- tmpvar_25 = dot (xlv_TEXCOORD1.xyz, tmpvar_20);
- worldN_5.x = tmpvar_25;
- highp float tmpvar_26;
- tmpvar_26 = dot (xlv_TEXCOORD2.xyz, tmpvar_20);
- worldN_5.y = tmpvar_26;
- highp float tmpvar_27;
- tmpvar_27 = dot (xlv_TEXCOORD3.xyz, tmpvar_20);
- worldN_5.z = tmpvar_27;
- tmpvar_3 = _LightColor0.xyz;
- tmpvar_4 = lightDir_8;
- mediump vec3 normal_28;
- normal_28 = worldN_5;
- tmpvar_1 = worldViewDir_7;
- tmpvar_2 = unity_SpecCube0_HDR;
- mediump vec3 I_29;
- I_29 = -(tmpvar_1);
- mediump vec3 normalWorld_30;
- normalWorld_30 = worldN_5;
- mediump vec4 tmpvar_31;
- tmpvar_31.w = 1.0;
- tmpvar_31.xyz = normalWorld_30;
- mediump vec3 x1_32;
- x1_32.x = dot (unity_SHAr, tmpvar_31);
- x1_32.y = dot (unity_SHAg, tmpvar_31);
- x1_32.z = dot (unity_SHAb, tmpvar_31);
- mediump vec4 hdr_33;
- hdr_33 = tmpvar_2;
- mediump vec4 tmpvar_34;
- tmpvar_34.xyz = (I_29 - (2.0 * (
- dot (worldN_5, I_29)
- * worldN_5)));
- tmpvar_34.w = (pow ((1.0 - tmpvar_19), 0.75) * 7.0);
- lowp vec4 tmpvar_35;
- tmpvar_35 = impl_low_textureCubeLodEXT (unity_SpecCube0, tmpvar_34.xyz, tmpvar_34.w);
- mediump vec4 tmpvar_36;
- tmpvar_36 = tmpvar_35;
- lowp vec3 tmpvar_37;
- mediump vec3 viewDir_38;
- viewDir_38 = worldViewDir_7;
- mediump vec4 c_39;
- lowp vec3 tmpvar_40;
- tmpvar_40 = normalize(worldN_5);
- mediump vec3 tmpvar_41;
- mediump vec3 albedo_42;
- albedo_42 = tmpvar_16;
- mediump vec3 tmpvar_43;
- tmpvar_43 = mix (unity_ColorSpaceDielectricSpec.xyz, albedo_42, vec3(tmpvar_18));
- mediump float tmpvar_44;
- tmpvar_44 = (unity_ColorSpaceDielectricSpec.w - (tmpvar_18 * unity_ColorSpaceDielectricSpec.w));
- tmpvar_41 = (albedo_42 * tmpvar_44);
- tmpvar_37 = tmpvar_41;
- mediump vec3 diffColor_45;
- diffColor_45 = tmpvar_37;
- tmpvar_37 = diffColor_45;
- mediump vec3 diffColor_46;
- diffColor_46 = tmpvar_37;
- mediump vec3 normal_47;
- normal_47 = tmpvar_40;
- mediump vec3 tmpvar_48;
- mediump vec3 inVec_49;
- inVec_49 = (tmpvar_4 + viewDir_38);
- tmpvar_48 = (inVec_49 * inversesqrt(max (0.001,
- dot (inVec_49, inVec_49)
- )));
- mediump float tmpvar_50;
- tmpvar_50 = max (0.0, dot (tmpvar_4, tmpvar_48));
- mediump float tmpvar_51;
- tmpvar_51 = (1.0 - tmpvar_19);
- mediump float tmpvar_52;
- mediump float tmpvar_53;
- tmpvar_53 = max ((10.0 / log2(
- (((1.0 - tmpvar_51) * 0.968) + 0.03)
- )), -255.937);
- tmpvar_52 = (tmpvar_53 * tmpvar_53);
- mediump float x_54;
- x_54 = (1.0 - max (0.0, dot (normal_47, viewDir_38)));
- c_39.xyz = (((
- ((diffColor_46 + (clamp (
- (((tmpvar_52 + 1.0) * pow (max (0.0,
- dot (normal_47, tmpvar_48)
- ), tmpvar_52)) / (((unity_LightGammaCorrectionConsts.z *
- (((tmpvar_50 * tmpvar_50) * tmpvar_19) + (tmpvar_51 * tmpvar_51))
- ) * tmpvar_50) + 0.0001))
- , 0.0, 100.0) * tmpvar_43)) * tmpvar_3)
- *
- max (0.0, dot (normal_28, tmpvar_4))
- ) + (
- (xlv_TEXCOORD4 + x1_32)
- * diffColor_46)) + ((
- (hdr_33.x * tmpvar_36.w)
- * tmpvar_36.xyz) * mix (tmpvar_43, vec3(
- clamp ((tmpvar_19 + (1.0 - tmpvar_44)), 0.0, 1.0)
- ), vec3(
- ((x_54 * x_54) * (x_54 * x_54))
- ))));
- c_39.w = 0.0;
- c_6 = c_39;
- c_6.xyz = (c_6.xyz + tmpvar_17);
- c_6.w = 1.0;
- gl_FragData[0] = c_6;
- }
-
-
- #endif
- "
- }
- SubProgram "gles3 " {
- Keywords { "DIRECTIONAL" "SHADOWS_OFF" "LIGHTMAP_OFF" "DIRLIGHTMAP_OFF" "DYNAMICLIGHTMAP_OFF" }
- "!!GLES3
- #ifdef VERTEX
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- in highp vec4 in_POSITION0;
- in highp vec4 in_TANGENT0;
- in highp vec3 in_NORMAL0;
- in highp vec4 in_TEXCOORD0;
- out highp vec4 vs_TEXCOORD0;
- out highp vec4 vs_TEXCOORD1;
- out highp vec4 vs_TEXCOORD2;
- out highp vec4 vs_TEXCOORD3;
- out mediump vec3 vs_TEXCOORD4;
- highp vec4 t0;
- mediump vec4 t16_0;
- highp vec4 t1;
- lowp vec3 t10_2;
- highp vec3 t3;
- mediump float t16_4;
- mediump vec3 t16_5;
- highp float t19;
- void main()
- {
- t0 = in_POSITION0.yyyy * glstate_matrix_mvp[1];
- t0 = glstate_matrix_mvp[0] * in_POSITION0.xxxx + t0;
- t0 = glstate_matrix_mvp[2] * in_POSITION0.zzzz + t0;
- gl_Position = glstate_matrix_mvp[3] * in_POSITION0.wwww + t0;
- vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
- vs_TEXCOORD0.zw = in_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
- t0.x = in_NORMAL0.x * _World2Object[0].x;
- t0.y = in_NORMAL0.x * _World2Object[1].x;
- t0.zw = in_NORMAL0.xx * _World2Object[2].xx;
- t1.x = in_NORMAL0.y * _World2Object[0].y;
- t1.y = in_NORMAL0.y * _World2Object[1].y;
- t1.zw = in_NORMAL0.yy * _World2Object[2].yy;
- t0 = t0 + t1;
- t1.x = in_NORMAL0.z * _World2Object[0].z;
- t1.y = in_NORMAL0.z * _World2Object[1].z;
- t1.zw = in_NORMAL0.zz * _World2Object[2].zz;
- t0 = t0 + t1;
- t1.x = dot(t0.xyw, t0.xyw);
- t1.x = inversesqrt(t1.x);
- t0 = t0 * t1.xxxx;
- t1.xyz = in_TANGENT0.yyy * _Object2World[1].yzx;
- t1.xyz = _Object2World[0].yzx * in_TANGENT0.xxx + t1.xyz;
- t1.xyz = _Object2World[2].yzx * in_TANGENT0.zzz + t1.xyz;
- t19 = dot(t1.xyz, t1.xyz);
- t19 = inversesqrt(t19);
- t1.xyz = vec3(t19) * t1.xyz;
- t10_2.xyz = t0.wxy * t1.xyz;
- t10_2.xyz = t0.ywx * t1.yzx + (-t10_2.xyz);
- t19 = in_TANGENT0.w * unity_WorldTransformParams.w;
- t10_2.xyz = vec3(t19) * t10_2.xyz;
- vs_TEXCOORD1.y = t10_2.x;
- vs_TEXCOORD1.z = t0.x;
- t3.xyz = in_POSITION0.yyy * _Object2World[1].xyz;
- t3.xyz = _Object2World[0].xyz * in_POSITION0.xxx + t3.xyz;
- t3.xyz = _Object2World[2].xyz * in_POSITION0.zzz + t3.xyz;
- t3.xyz = _Object2World[3].xyz * in_POSITION0.www + t3.xyz;
- vs_TEXCOORD1.w = t3.x;
- vs_TEXCOORD1.x = t1.z;
- vs_TEXCOORD2.x = t1.x;
- vs_TEXCOORD3.x = t1.y;
- vs_TEXCOORD2.w = t3.y;
- vs_TEXCOORD3.w = t3.z;
- vs_TEXCOORD2.z = t0.y;
- vs_TEXCOORD2.y = t10_2.y;
- vs_TEXCOORD3.y = t10_2.z;
- vs_TEXCOORD3.z = t0.w;
- t16_4 = t0.y * t0.y;
- t16_4 = t0.x * t0.x + (-t16_4);
- t16_0 = t0.ywzx * t0;
- t16_5.x = dot(unity_SHBr, t16_0);
- t16_5.y = dot(unity_SHBg, t16_0);
- t16_5.z = dot(unity_SHBb, t16_0);
- vs_TEXCOORD4.xyz = unity_SHC.xyz * vec3(t16_4) + t16_5.xyz;
- return;
- }
-
- #endif
- #ifdef FRAGMENT
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- uniform lowp sampler2D _MainTex;
- uniform lowp sampler2D _BumpMap;
- uniform lowp sampler2D _SpecTex;
- uniform lowp samplerCube _Cube;
- uniform lowp samplerCube unity_SpecCube0;
- in highp vec4 vs_TEXCOORD0;
- in highp vec4 vs_TEXCOORD1;
- in highp vec4 vs_TEXCOORD2;
- in highp vec4 vs_TEXCOORD3;
- in mediump vec3 vs_TEXCOORD4;
- layout(location = 0) out lowp vec4 SV_Target0;
- highp vec3 t0;
- mediump vec3 t16_0;
- lowp vec3 t10_0;
- mediump vec4 t16_1;
- lowp vec3 t10_2;
- mediump vec3 t16_3;
- lowp vec4 t10_4;
- highp vec4 t5;
- lowp vec4 t10_5;
- lowp vec3 t10_6;
- lowp vec3 t10_7;
- mediump vec3 t16_8;
- mediump vec3 t16_9;
- mediump vec3 t16_11;
- mediump float t16_12;
- mediump vec3 t16_13;
- mediump float t16_21;
- highp float t30;
- mediump float t16_30;
- mediump float t16_31;
- void main()
- {
- t0.x = vs_TEXCOORD1.w;
- t0.y = vs_TEXCOORD2.w;
- t0.z = vs_TEXCOORD3.w;
- t0.xyz = (-t0.xyz) + _WorldSpaceCameraPos.xyzx.xyz;
- t30 = dot(t0.xyz, t0.xyz);
- t30 = inversesqrt(t30);
- t16_1.xyz = t0.xyz * vec3(t30) + _WorldSpaceLightPos0.xyz;
- t0.xyz = vec3(t30) * t0.xyz;
- t16_31 = dot(t16_1.xyz, t16_1.xyz);
- t16_30 = max(t16_31, 0.00100000005);
- t16_31 = inversesqrt(t16_30);
- t16_1.xyz = vec3(t16_31) * t16_1.xyz;
- t16_31 = dot(_WorldSpaceLightPos0.xyz, t16_1.xyz);
- t16_30 = max(t16_31, 0.0);
- t16_31 = t16_30 * t16_30;
- t10_2.xyz = texture(_SpecTex, vs_TEXCOORD0.xy).xyz;
- t16_3.x = (-t10_2.x) * _SmoothnessIntensity + 1.0;
- t16_13.x = t16_3.x * t16_3.x;
- t10_4.xy = t10_2.xy * vec2(_SmoothnessIntensity, _MetallicIntensity);
- t16_31 = t16_31 * t10_4.x + t16_13.x;
- t16_31 = t16_31 * unity_LightGammaCorrectionConsts.z;
- t16_30 = t16_31 * t16_30 + 9.99999975e-05;
- t16_31 = (-t16_3.x) + 1.0;
- t16_3.x = log2(t16_3.x);
- t16_3.x = t16_3.x * 0.75;
- t16_3.x = exp2(t16_3.x);
- t16_3.x = t16_3.x * 7.0;
- t16_31 = t16_31 * 0.967999995 + 0.0299999993;
- t16_31 = log2(t16_31);
- t16_31 = 10.0 / t16_31;
- t16_11.z = max(t16_31, -255.936996);
- t16_13.x = t16_11.z * t16_11.z + 1.0;
- t10_5.xyz = texture(_BumpMap, vs_TEXCOORD0.zw).xyz;
- t10_4.xzw = t10_5.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0);
- t5.x = dot(vs_TEXCOORD1.xyz, t10_4.xzw);
- t5.y = dot(vs_TEXCOORD2.xyz, t10_4.xzw);
- t5.z = dot(vs_TEXCOORD3.xyz, t10_4.xzw);
- t10_6.x = dot(t5.xyz, t5.xyz);
- t10_6.x = inversesqrt(t10_6.x);
- t10_6.xyz = t5.xyz * t10_6.xxx;
- t16_1.x = dot(t10_6.xyz, t16_1.xyz);
- t16_11.x = dot(t10_6.xyz, t0.xyz);
- t16_12 = max(t16_11.x, 0.0);
- t16_11.x = (-t16_12) + 1.0;
- t16_1.yw = t16_11.xz * t16_11.xz;
- t16_12 = max(t16_1.x, 0.0);
- t16_1.x = log2(t16_12);
- t16_1.xy = vec2(t16_1.x * t16_1.w, t16_1.y * t16_1.y);
- t16_1.x = exp2(t16_1.x);
- t16_1.x = t16_1.x * t16_13.x;
- t16_30 = t16_1.x / t16_30;
- t16_1.x = max(t16_30, 0.0);
- t16_1.x = min(t16_1.x, 100.0);
- t10_7.xyz = texture(_MainTex, vs_TEXCOORD0.xy).xyz;
- t16_13.xyz = t10_7.xyz + (-unity_ColorSpaceDielectricSpec.xyz);
- t16_13.xyz = t10_4.yyy * t16_13.xyz + unity_ColorSpaceDielectricSpec.xyz;
- t16_21 = (-t10_4.y) * unity_ColorSpaceDielectricSpec.w + unity_ColorSpaceDielectricSpec.w;
- t16_8.xyz = vec3(t16_21) * t10_7.xyz;
- t16_21 = (-t16_21) + 1.0;
- t16_21 = t10_2.x * _SmoothnessIntensity + t16_21;
- t16_21 = clamp(t16_21, 0.0, 1.0);
- t16_9.xyz = (-t16_13.xyz) + vec3(t16_21);
- t16_11.xyz = t16_1.yyy * t16_9.xyz + t16_13.xyz;
- t16_13.xyz = t16_1.xxx * t16_13.xyz + t16_8.xyz;
- t16_13.xyz = t16_13.xyz * _LightColor0.xyz;
- t5.w = 1.0;
- t16_9.x = dot(unity_SHAr, t5);
- t16_9.y = dot(unity_SHAg, t5);
- t16_9.z = dot(unity_SHAb, t5);
- t16_9.xyz = t16_9.xyz + vs_TEXCOORD4.xyz;
- t16_8.xyz = t16_8.xyz * t16_9.xyz;
- t16_1.x = dot(t5.xyz, _WorldSpaceLightPos0.xyz);
- t16_30 = max(t16_1.x, 0.0);
- t16_13.xyz = t16_13.xyz * vec3(t16_30) + t16_8.xyz;
- t16_1.x = dot((-t0.xyz), t5.xyz);
- t16_1.x = t16_1.x + t16_1.x;
- t16_8.xyz = t5.xyz * (-t16_1.xxx) + (-t0.xyz);
- t10_5 = textureLod(unity_SpecCube0, t16_8.xyz, t16_3.x);
- t16_1.x = t10_5.w * unity_SpecCube0_HDR.x;
- t16_8.xyz = t10_5.xyz * t16_1.xxx;
- t16_1.xyz = t16_8.xyz * t16_11.xyz + t16_13.xyz;
- t16_3.x = dot(vs_TEXCOORD1.xyz, t10_4.xzw);
- t16_3.y = dot(vs_TEXCOORD2.xyz, t10_4.xzw);
- t16_3.z = dot(vs_TEXCOORD3.xyz, t10_4.xzw);
- t30 = dot((-t0.xyz), t16_3.xyz);
- t30 = t30 + t30;
- t0.xyz = t16_3.xyz * (-vec3(t30)) + (-t0.xyz);
- t10_0.xyz = texture(_Cube, t0.xyz).xyz;
- t16_0.xyz = t10_2.zzz * t10_0.xyz;
- t16_1.xyz = t16_0.xyz * vec3(_Cubepower) + t16_1.xyz;
- SV_Target0.xyz = t16_1.xyz;
- SV_Target0.w = 1.0;
- return;
- }
-
- #endif
- "
- }
- SubProgram "gles " {
- Keywords { "DIRECTIONAL" "SHADOWS_OFF" "LIGHTMAP_OFF" "DIRLIGHTMAP_OFF" "DYNAMICLIGHTMAP_OFF" "VERTEXLIGHT_ON" }
- "!!GLES
- #version 100
-
- #ifdef VERTEX
- attribute vec4 _glesTANGENT;
- attribute vec4 _glesVertex;
- attribute vec3 _glesNormal;
- attribute vec4 _glesMultiTexCoord0;
- uniform highp vec4 unity_4LightPosX0;
- uniform highp vec4 unity_4LightPosY0;
- uniform highp vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform highp mat4 glstate_matrix_mvp;
- uniform highp mat4 _Object2World;
- uniform highp mat4 _World2Object;
- uniform highp vec4 unity_WorldTransformParams;
- uniform highp vec4 _MainTex_ST;
- uniform highp vec4 _BumpMap_ST;
- varying highp vec4 xlv_TEXCOORD0;
- varying highp vec4 xlv_TEXCOORD1;
- varying highp vec4 xlv_TEXCOORD2;
- varying highp vec4 xlv_TEXCOORD3;
- varying mediump vec3 xlv_TEXCOORD4;
- void main ()
- {
- lowp float tangentSign_1;
- lowp vec3 worldTangent_2;
- lowp vec3 worldNormal_3;
- highp vec4 tmpvar_4;
- mediump vec3 tmpvar_5;
- tmpvar_4.xy = ((_glesMultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
- tmpvar_4.zw = ((_glesMultiTexCoord0.xy * _BumpMap_ST.xy) + _BumpMap_ST.zw);
- highp vec3 tmpvar_6;
- tmpvar_6 = (_Object2World * _glesVertex).xyz;
- highp vec4 v_7;
- v_7.x = _World2Object[0].x;
- v_7.y = _World2Object[1].x;
- v_7.z = _World2Object[2].x;
- v_7.w = _World2Object[3].x;
- highp vec4 v_8;
- v_8.x = _World2Object[0].y;
- v_8.y = _World2Object[1].y;
- v_8.z = _World2Object[2].y;
- v_8.w = _World2Object[3].y;
- highp vec4 v_9;
- v_9.x = _World2Object[0].z;
- v_9.y = _World2Object[1].z;
- v_9.z = _World2Object[2].z;
- v_9.w = _World2Object[3].z;
- highp vec3 tmpvar_10;
- tmpvar_10 = normalize(((
- (v_7.xyz * _glesNormal.x)
- +
- (v_8.xyz * _glesNormal.y)
- ) + (v_9.xyz * _glesNormal.z)));
- worldNormal_3 = tmpvar_10;
- highp mat3 tmpvar_11;
- tmpvar_11[0] = _Object2World[0].xyz;
- tmpvar_11[1] = _Object2World[1].xyz;
- tmpvar_11[2] = _Object2World[2].xyz;
- highp vec3 tmpvar_12;
- tmpvar_12 = normalize((tmpvar_11 * _glesTANGENT.xyz));
- worldTangent_2 = tmpvar_12;
- highp float tmpvar_13;
- tmpvar_13 = (_glesTANGENT.w * unity_WorldTransformParams.w);
- tangentSign_1 = tmpvar_13;
- lowp vec3 tmpvar_14;
- tmpvar_14 = (((worldNormal_3.yzx * worldTangent_2.zxy) - (worldNormal_3.zxy * worldTangent_2.yzx)) * tangentSign_1);
- highp vec4 tmpvar_15;
- tmpvar_15.x = worldTangent_2.x;
- tmpvar_15.y = tmpvar_14.x;
- tmpvar_15.z = worldNormal_3.x;
- tmpvar_15.w = tmpvar_6.x;
- highp vec4 tmpvar_16;
- tmpvar_16.x = worldTangent_2.y;
- tmpvar_16.y = tmpvar_14.y;
- tmpvar_16.z = worldNormal_3.y;
- tmpvar_16.w = tmpvar_6.y;
- highp vec4 tmpvar_17;
- tmpvar_17.x = worldTangent_2.z;
- tmpvar_17.y = tmpvar_14.z;
- tmpvar_17.z = worldNormal_3.z;
- tmpvar_17.w = tmpvar_6.z;
- lowp vec4 tmpvar_18;
- tmpvar_18.w = 1.0;
- tmpvar_18.xyz = worldNormal_3;
- mediump vec4 normal_19;
- normal_19 = tmpvar_18;
- mediump vec3 x2_20;
- mediump vec4 tmpvar_21;
- tmpvar_21 = (normal_19.xyzz * normal_19.yzzx);
- x2_20.x = dot (unity_SHBr, tmpvar_21);
- x2_20.y = dot (unity_SHBg, tmpvar_21);
- x2_20.z = dot (unity_SHBb, tmpvar_21);
- highp vec3 lightColor0_22;
- lightColor0_22 = unity_LightColor[0].xyz;
- highp vec3 lightColor1_23;
- lightColor1_23 = unity_LightColor[1].xyz;
- highp vec3 lightColor2_24;
- lightColor2_24 = unity_LightColor[2].xyz;
- highp vec3 lightColor3_25;
- lightColor3_25 = unity_LightColor[3].xyz;
- highp vec4 lightAttenSq_26;
- lightAttenSq_26 = unity_4LightAtten0;
- highp vec3 normal_27;
- normal_27 = worldNormal_3;
- highp vec3 col_28;
- highp vec4 ndotl_29;
- highp vec4 lengthSq_30;
- highp vec4 tmpvar_31;
- tmpvar_31 = (unity_4LightPosX0 - tmpvar_6.x);
- highp vec4 tmpvar_32;
- tmpvar_32 = (unity_4LightPosY0 - tmpvar_6.y);
- highp vec4 tmpvar_33;
- tmpvar_33 = (unity_4LightPosZ0 - tmpvar_6.z);
- lengthSq_30 = (tmpvar_31 * tmpvar_31);
- lengthSq_30 = (lengthSq_30 + (tmpvar_32 * tmpvar_32));
- lengthSq_30 = (lengthSq_30 + (tmpvar_33 * tmpvar_33));
- ndotl_29 = (tmpvar_31 * normal_27.x);
- ndotl_29 = (ndotl_29 + (tmpvar_32 * normal_27.y));
- ndotl_29 = (ndotl_29 + (tmpvar_33 * normal_27.z));
- highp vec4 tmpvar_34;
- tmpvar_34 = max (vec4(0.0, 0.0, 0.0, 0.0), (ndotl_29 * inversesqrt(lengthSq_30)));
- ndotl_29 = tmpvar_34;
- highp vec4 tmpvar_35;
- tmpvar_35 = (tmpvar_34 * (1.0/((1.0 +
- (lengthSq_30 * lightAttenSq_26)
- ))));
- col_28 = (lightColor0_22 * tmpvar_35.x);
- col_28 = (col_28 + (lightColor1_23 * tmpvar_35.y));
- col_28 = (col_28 + (lightColor2_24 * tmpvar_35.z));
- col_28 = (col_28 + (lightColor3_25 * tmpvar_35.w));
- tmpvar_5 = ((x2_20 + (unity_SHC.xyz *
- ((normal_19.x * normal_19.x) - (normal_19.y * normal_19.y))
- )) + col_28);
- gl_Position = (glstate_matrix_mvp * _glesVertex);
- xlv_TEXCOORD0 = tmpvar_4;
- xlv_TEXCOORD1 = tmpvar_15;
- xlv_TEXCOORD2 = tmpvar_16;
- xlv_TEXCOORD3 = tmpvar_17;
- xlv_TEXCOORD4 = tmpvar_5;
- }
-
-
- #endif
- #ifdef FRAGMENT
- #extension GL_EXT_shader_texture_lod : enable
- lowp vec4 impl_low_textureCubeLodEXT(lowp samplerCube sampler, highp vec3 coord, mediump float lod)
- {
- #if defined(GL_EXT_shader_texture_lod)
- return textureCubeLodEXT(sampler, coord, lod);
- #else
- return textureCube(sampler, coord, lod);
- #endif
- }
-
- uniform highp vec3 _WorldSpaceCameraPos;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform lowp samplerCube unity_SpecCube0;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform lowp vec4 _LightColor0;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform sampler2D _MainTex;
- uniform sampler2D _BumpMap;
- uniform sampler2D _SpecTex;
- uniform lowp samplerCube _Cube;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- varying highp vec4 xlv_TEXCOORD0;
- varying highp vec4 xlv_TEXCOORD1;
- varying highp vec4 xlv_TEXCOORD2;
- varying highp vec4 xlv_TEXCOORD3;
- varying mediump vec3 xlv_TEXCOORD4;
- void main ()
- {
- mediump vec3 tmpvar_1;
- highp vec4 tmpvar_2;
- mediump vec3 tmpvar_3;
- mediump vec3 tmpvar_4;
- lowp vec3 worldN_5;
- lowp vec4 c_6;
- lowp vec3 worldViewDir_7;
- lowp vec3 lightDir_8;
- highp vec3 tmpvar_9;
- mediump vec3 tmpvar_10;
- mediump vec3 tmpvar_11;
- mediump vec3 tmpvar_12;
- highp vec3 tmpvar_13;
- tmpvar_13.x = xlv_TEXCOORD1.w;
- tmpvar_13.y = xlv_TEXCOORD2.w;
- tmpvar_13.z = xlv_TEXCOORD3.w;
- mediump vec3 tmpvar_14;
- tmpvar_14 = _WorldSpaceLightPos0.xyz;
- lightDir_8 = tmpvar_14;
- highp vec3 tmpvar_15;
- tmpvar_15 = normalize((_WorldSpaceCameraPos - tmpvar_13));
- worldViewDir_7 = tmpvar_15;
- tmpvar_9 = -(worldViewDir_7);
- tmpvar_10 = xlv_TEXCOORD1.xyz;
- tmpvar_11 = xlv_TEXCOORD2.xyz;
- tmpvar_12 = xlv_TEXCOORD3.xyz;
- lowp vec3 tmpvar_16;
- mediump vec3 tmpvar_17;
- mediump float tmpvar_18;
- mediump float tmpvar_19;
- lowp vec3 tmpvar_20;
- tmpvar_20 = ((texture2D (_BumpMap, xlv_TEXCOORD0.zw).xyz * 2.0) - 1.0);
- lowp vec4 tmpvar_21;
- tmpvar_21 = texture2D (_SpecTex, xlv_TEXCOORD0.xy);
- tmpvar_16 = texture2D (_MainTex, xlv_TEXCOORD0.xy).xyz;
- tmpvar_19 = (tmpvar_21.x * _SmoothnessIntensity);
- tmpvar_18 = (tmpvar_21.y * _MetallicIntensity);
- mediump vec3 tmpvar_22;
- tmpvar_22.x = dot (tmpvar_10, tmpvar_20);
- tmpvar_22.y = dot (tmpvar_11, tmpvar_20);
- tmpvar_22.z = dot (tmpvar_12, tmpvar_20);
- highp vec3 tmpvar_23;
- tmpvar_23 = (tmpvar_9 - (2.0 * (
- dot (tmpvar_22, tmpvar_9)
- * tmpvar_22)));
- lowp vec4 tmpvar_24;
- tmpvar_24 = textureCube (_Cube, tmpvar_23);
- tmpvar_17 = ((tmpvar_24.xyz * tmpvar_21.z) * _Cubepower);
- highp float tmpvar_25;
- tmpvar_25 = dot (xlv_TEXCOORD1.xyz, tmpvar_20);
- worldN_5.x = tmpvar_25;
- highp float tmpvar_26;
- tmpvar_26 = dot (xlv_TEXCOORD2.xyz, tmpvar_20);
- worldN_5.y = tmpvar_26;
- highp float tmpvar_27;
- tmpvar_27 = dot (xlv_TEXCOORD3.xyz, tmpvar_20);
- worldN_5.z = tmpvar_27;
- tmpvar_3 = _LightColor0.xyz;
- tmpvar_4 = lightDir_8;
- mediump vec3 normal_28;
- normal_28 = worldN_5;
- tmpvar_1 = worldViewDir_7;
- tmpvar_2 = unity_SpecCube0_HDR;
- mediump vec3 I_29;
- I_29 = -(tmpvar_1);
- mediump vec3 normalWorld_30;
- normalWorld_30 = worldN_5;
- mediump vec4 tmpvar_31;
- tmpvar_31.w = 1.0;
- tmpvar_31.xyz = normalWorld_30;
- mediump vec3 x1_32;
- x1_32.x = dot (unity_SHAr, tmpvar_31);
- x1_32.y = dot (unity_SHAg, tmpvar_31);
- x1_32.z = dot (unity_SHAb, tmpvar_31);
- mediump vec4 hdr_33;
- hdr_33 = tmpvar_2;
- mediump vec4 tmpvar_34;
- tmpvar_34.xyz = (I_29 - (2.0 * (
- dot (worldN_5, I_29)
- * worldN_5)));
- tmpvar_34.w = (pow ((1.0 - tmpvar_19), 0.75) * 7.0);
- lowp vec4 tmpvar_35;
- tmpvar_35 = impl_low_textureCubeLodEXT (unity_SpecCube0, tmpvar_34.xyz, tmpvar_34.w);
- mediump vec4 tmpvar_36;
- tmpvar_36 = tmpvar_35;
- lowp vec3 tmpvar_37;
- mediump vec3 viewDir_38;
- viewDir_38 = worldViewDir_7;
- mediump vec4 c_39;
- lowp vec3 tmpvar_40;
- tmpvar_40 = normalize(worldN_5);
- mediump vec3 tmpvar_41;
- mediump vec3 albedo_42;
- albedo_42 = tmpvar_16;
- mediump vec3 tmpvar_43;
- tmpvar_43 = mix (unity_ColorSpaceDielectricSpec.xyz, albedo_42, vec3(tmpvar_18));
- mediump float tmpvar_44;
- tmpvar_44 = (unity_ColorSpaceDielectricSpec.w - (tmpvar_18 * unity_ColorSpaceDielectricSpec.w));
- tmpvar_41 = (albedo_42 * tmpvar_44);
- tmpvar_37 = tmpvar_41;
- mediump vec3 diffColor_45;
- diffColor_45 = tmpvar_37;
- tmpvar_37 = diffColor_45;
- mediump vec3 diffColor_46;
- diffColor_46 = tmpvar_37;
- mediump vec3 normal_47;
- normal_47 = tmpvar_40;
- mediump vec3 tmpvar_48;
- mediump vec3 inVec_49;
- inVec_49 = (tmpvar_4 + viewDir_38);
- tmpvar_48 = (inVec_49 * inversesqrt(max (0.001,
- dot (inVec_49, inVec_49)
- )));
- mediump float tmpvar_50;
- tmpvar_50 = max (0.0, dot (tmpvar_4, tmpvar_48));
- mediump float tmpvar_51;
- tmpvar_51 = (1.0 - tmpvar_19);
- mediump float tmpvar_52;
- mediump float tmpvar_53;
- tmpvar_53 = max ((10.0 / log2(
- (((1.0 - tmpvar_51) * 0.968) + 0.03)
- )), -255.937);
- tmpvar_52 = (tmpvar_53 * tmpvar_53);
- mediump float x_54;
- x_54 = (1.0 - max (0.0, dot (normal_47, viewDir_38)));
- c_39.xyz = (((
- ((diffColor_46 + (clamp (
- (((tmpvar_52 + 1.0) * pow (max (0.0,
- dot (normal_47, tmpvar_48)
- ), tmpvar_52)) / (((unity_LightGammaCorrectionConsts.z *
- (((tmpvar_50 * tmpvar_50) * tmpvar_19) + (tmpvar_51 * tmpvar_51))
- ) * tmpvar_50) + 0.0001))
- , 0.0, 100.0) * tmpvar_43)) * tmpvar_3)
- *
- max (0.0, dot (normal_28, tmpvar_4))
- ) + (
- (xlv_TEXCOORD4 + x1_32)
- * diffColor_46)) + ((
- (hdr_33.x * tmpvar_36.w)
- * tmpvar_36.xyz) * mix (tmpvar_43, vec3(
- clamp ((tmpvar_19 + (1.0 - tmpvar_44)), 0.0, 1.0)
- ), vec3(
- ((x_54 * x_54) * (x_54 * x_54))
- ))));
- c_39.w = 0.0;
- c_6 = c_39;
- c_6.xyz = (c_6.xyz + tmpvar_17);
- c_6.w = 1.0;
- gl_FragData[0] = c_6;
- }
-
-
- #endif
- "
- }
- SubProgram "gles3 " {
- Keywords { "DIRECTIONAL" "SHADOWS_OFF" "LIGHTMAP_OFF" "DIRLIGHTMAP_OFF" "DYNAMICLIGHTMAP_OFF" "VERTEXLIGHT_ON" }
- "!!GLES3
- #ifdef VERTEX
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- in highp vec4 in_POSITION0;
- in highp vec4 in_TANGENT0;
- in highp vec3 in_NORMAL0;
- in highp vec4 in_TEXCOORD0;
- out highp vec4 vs_TEXCOORD0;
- out highp vec4 vs_TEXCOORD1;
- out highp vec4 vs_TEXCOORD2;
- out highp vec4 vs_TEXCOORD3;
- out mediump vec3 vs_TEXCOORD4;
- highp vec4 t0;
- highp vec4 t1;
- mediump vec4 t16_1;
- highp vec4 t2;
- highp vec4 t3;
- lowp vec3 t10_3;
- highp vec4 t4;
- mediump vec3 t16_5;
- mediump vec3 t16_6;
- highp vec3 t7;
- void main()
- {
- t0 = in_POSITION0.yyyy * glstate_matrix_mvp[1];
- t0 = glstate_matrix_mvp[0] * in_POSITION0.xxxx + t0;
- t0 = glstate_matrix_mvp[2] * in_POSITION0.zzzz + t0;
- gl_Position = glstate_matrix_mvp[3] * in_POSITION0.wwww + t0;
- vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
- vs_TEXCOORD0.zw = in_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
- t0.x = in_TANGENT0.w * unity_WorldTransformParams.w;
- t7.xyz = in_TANGENT0.yyy * _Object2World[1].yzx;
- t7.xyz = _Object2World[0].yzx * in_TANGENT0.xxx + t7.xyz;
- t7.xyz = _Object2World[2].yzx * in_TANGENT0.zzz + t7.xyz;
- t1.x = dot(t7.xyz, t7.xyz);
- t1.x = inversesqrt(t1.x);
- t7.xyz = t7.xyz * t1.xxx;
- t1.x = in_NORMAL0.x * _World2Object[0].x;
- t1.y = in_NORMAL0.x * _World2Object[1].x;
- t1.zw = in_NORMAL0.xx * _World2Object[2].xx;
- t2.x = in_NORMAL0.y * _World2Object[0].y;
- t2.y = in_NORMAL0.y * _World2Object[1].y;
- t2.zw = in_NORMAL0.yy * _World2Object[2].yy;
- t1 = t1 + t2;
- t2.x = in_NORMAL0.z * _World2Object[0].z;
- t2.y = in_NORMAL0.z * _World2Object[1].z;
- t2.zw = in_NORMAL0.zz * _World2Object[2].zz;
- t1 = t1 + t2;
- t2.x = dot(t1.xyw, t1.xyw);
- t2.x = inversesqrt(t2.x);
- t1 = t1 * t2.xxxx;
- t10_3.xyz = t7.xyz * t1.wxy;
- t10_3.xyz = t1.ywx * t7.yzx + (-t10_3.xyz);
- t10_3.xyz = t0.xxx * t10_3.xyz;
- vs_TEXCOORD1.y = t10_3.x;
- vs_TEXCOORD1.x = t7.z;
- vs_TEXCOORD1.z = t1.x;
- t2.xyz = in_POSITION0.yyy * _Object2World[1].xyz;
- t2.xyz = _Object2World[0].xyz * in_POSITION0.xxx + t2.xyz;
- t2.xyz = _Object2World[2].xyz * in_POSITION0.zzz + t2.xyz;
- t2.xyz = _Object2World[3].xyz * in_POSITION0.www + t2.xyz;
- vs_TEXCOORD1.w = t2.x;
- vs_TEXCOORD2.x = t7.x;
- vs_TEXCOORD3.x = t7.y;
- vs_TEXCOORD2.y = t10_3.y;
- vs_TEXCOORD3.y = t10_3.z;
- vs_TEXCOORD2.z = t1.y;
- vs_TEXCOORD2.w = t2.y;
- vs_TEXCOORD3.z = t1.w;
- vs_TEXCOORD3.w = t2.z;
- t0 = (-t2.yyyy) + unity_4LightPosY0;
- t3 = t1.yyyy * t0;
- t0 = t0 * t0;
- t4 = (-t2.xxxx) + unity_4LightPosX0;
- t2 = (-t2.zzzz) + unity_4LightPosZ0;
- t3 = t4 * t1.xxxx + t3;
- t0 = t4 * t4 + t0;
- t0 = t2 * t2 + t0;
- t2 = t2 * t1.wwww + t3;
- t3 = inversesqrt(t0);
- t0 = t0 * unity_4LightAtten0 + vec4(1.0, 1.0, 1.0, 1.0);
- t0 = vec4(1.0, 1.0, 1.0, 1.0) / t0;
- t2 = t2 * t3;
- t2 = max(t2, vec4(0.0, 0.0, 0.0, 0.0));
- t0 = t0 * t2;
- t2.xyz = t0.yyy * unity_LightColor[1].xyz;
- t2.xyz = unity_LightColor[0].xyz * t0.xxx + t2.xyz;
- t0.xyz = unity_LightColor[2].xyz * t0.zzz + t2.xyz;
- t0.xyz = unity_LightColor[3].xyz * t0.www + t0.xyz;
- t16_5.x = t1.y * t1.y;
- t16_5.x = t1.x * t1.x + (-t16_5.x);
- t16_1 = t1.ywzx * t1;
- t16_6.x = dot(unity_SHBr, t16_1);
- t16_6.y = dot(unity_SHBg, t16_1);
- t16_6.z = dot(unity_SHBb, t16_1);
- t16_5.xyz = unity_SHC.xyz * t16_5.xxx + t16_6.xyz;
- t0.xyz = t0.xyz + t16_5.xyz;
- vs_TEXCOORD4.xyz = t0.xyz;
- return;
- }
-
- #endif
- #ifdef FRAGMENT
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- uniform lowp sampler2D _MainTex;
- uniform lowp sampler2D _BumpMap;
- uniform lowp sampler2D _SpecTex;
- uniform lowp samplerCube _Cube;
- uniform lowp samplerCube unity_SpecCube0;
- in highp vec4 vs_TEXCOORD0;
- in highp vec4 vs_TEXCOORD1;
- in highp vec4 vs_TEXCOORD2;
- in highp vec4 vs_TEXCOORD3;
- in mediump vec3 vs_TEXCOORD4;
- layout(location = 0) out lowp vec4 SV_Target0;
- highp vec3 t0;
- mediump vec3 t16_0;
- lowp vec3 t10_0;
- mediump vec4 t16_1;
- lowp vec3 t10_2;
- mediump vec3 t16_3;
- lowp vec4 t10_4;
- highp vec4 t5;
- lowp vec4 t10_5;
- lowp vec3 t10_6;
- lowp vec3 t10_7;
- mediump vec3 t16_8;
- mediump vec3 t16_9;
- mediump vec3 t16_11;
- mediump float t16_12;
- mediump vec3 t16_13;
- mediump float t16_21;
- highp float t30;
- mediump float t16_30;
- mediump float t16_31;
- void main()
- {
- t0.x = vs_TEXCOORD1.w;
- t0.y = vs_TEXCOORD2.w;
- t0.z = vs_TEXCOORD3.w;
- t0.xyz = (-t0.xyz) + _WorldSpaceCameraPos.xyzx.xyz;
- t30 = dot(t0.xyz, t0.xyz);
- t30 = inversesqrt(t30);
- t16_1.xyz = t0.xyz * vec3(t30) + _WorldSpaceLightPos0.xyz;
- t0.xyz = vec3(t30) * t0.xyz;
- t16_31 = dot(t16_1.xyz, t16_1.xyz);
- t16_30 = max(t16_31, 0.00100000005);
- t16_31 = inversesqrt(t16_30);
- t16_1.xyz = vec3(t16_31) * t16_1.xyz;
- t16_31 = dot(_WorldSpaceLightPos0.xyz, t16_1.xyz);
- t16_30 = max(t16_31, 0.0);
- t16_31 = t16_30 * t16_30;
- t10_2.xyz = texture(_SpecTex, vs_TEXCOORD0.xy).xyz;
- t16_3.x = (-t10_2.x) * _SmoothnessIntensity + 1.0;
- t16_13.x = t16_3.x * t16_3.x;
- t10_4.xy = t10_2.xy * vec2(_SmoothnessIntensity, _MetallicIntensity);
- t16_31 = t16_31 * t10_4.x + t16_13.x;
- t16_31 = t16_31 * unity_LightGammaCorrectionConsts.z;
- t16_30 = t16_31 * t16_30 + 9.99999975e-05;
- t16_31 = (-t16_3.x) + 1.0;
- t16_3.x = log2(t16_3.x);
- t16_3.x = t16_3.x * 0.75;
- t16_3.x = exp2(t16_3.x);
- t16_3.x = t16_3.x * 7.0;
- t16_31 = t16_31 * 0.967999995 + 0.0299999993;
- t16_31 = log2(t16_31);
- t16_31 = 10.0 / t16_31;
- t16_11.z = max(t16_31, -255.936996);
- t16_13.x = t16_11.z * t16_11.z + 1.0;
- t10_5.xyz = texture(_BumpMap, vs_TEXCOORD0.zw).xyz;
- t10_4.xzw = t10_5.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0);
- t5.x = dot(vs_TEXCOORD1.xyz, t10_4.xzw);
- t5.y = dot(vs_TEXCOORD2.xyz, t10_4.xzw);
- t5.z = dot(vs_TEXCOORD3.xyz, t10_4.xzw);
- t10_6.x = dot(t5.xyz, t5.xyz);
- t10_6.x = inversesqrt(t10_6.x);
- t10_6.xyz = t5.xyz * t10_6.xxx;
- t16_1.x = dot(t10_6.xyz, t16_1.xyz);
- t16_11.x = dot(t10_6.xyz, t0.xyz);
- t16_12 = max(t16_11.x, 0.0);
- t16_11.x = (-t16_12) + 1.0;
- t16_1.yw = t16_11.xz * t16_11.xz;
- t16_12 = max(t16_1.x, 0.0);
- t16_1.x = log2(t16_12);
- t16_1.xy = vec2(t16_1.x * t16_1.w, t16_1.y * t16_1.y);
- t16_1.x = exp2(t16_1.x);
- t16_1.x = t16_1.x * t16_13.x;
- t16_30 = t16_1.x / t16_30;
- t16_1.x = max(t16_30, 0.0);
- t16_1.x = min(t16_1.x, 100.0);
- t10_7.xyz = texture(_MainTex, vs_TEXCOORD0.xy).xyz;
- t16_13.xyz = t10_7.xyz + (-unity_ColorSpaceDielectricSpec.xyz);
- t16_13.xyz = t10_4.yyy * t16_13.xyz + unity_ColorSpaceDielectricSpec.xyz;
- t16_21 = (-t10_4.y) * unity_ColorSpaceDielectricSpec.w + unity_ColorSpaceDielectricSpec.w;
- t16_8.xyz = vec3(t16_21) * t10_7.xyz;
- t16_21 = (-t16_21) + 1.0;
- t16_21 = t10_2.x * _SmoothnessIntensity + t16_21;
- t16_21 = clamp(t16_21, 0.0, 1.0);
- t16_9.xyz = (-t16_13.xyz) + vec3(t16_21);
- t16_11.xyz = t16_1.yyy * t16_9.xyz + t16_13.xyz;
- t16_13.xyz = t16_1.xxx * t16_13.xyz + t16_8.xyz;
- t16_13.xyz = t16_13.xyz * _LightColor0.xyz;
- t5.w = 1.0;
- t16_9.x = dot(unity_SHAr, t5);
- t16_9.y = dot(unity_SHAg, t5);
- t16_9.z = dot(unity_SHAb, t5);
- t16_9.xyz = t16_9.xyz + vs_TEXCOORD4.xyz;
- t16_8.xyz = t16_8.xyz * t16_9.xyz;
- t16_1.x = dot(t5.xyz, _WorldSpaceLightPos0.xyz);
- t16_30 = max(t16_1.x, 0.0);
- t16_13.xyz = t16_13.xyz * vec3(t16_30) + t16_8.xyz;
- t16_1.x = dot((-t0.xyz), t5.xyz);
- t16_1.x = t16_1.x + t16_1.x;
- t16_8.xyz = t5.xyz * (-t16_1.xxx) + (-t0.xyz);
- t10_5 = textureLod(unity_SpecCube0, t16_8.xyz, t16_3.x);
- t16_1.x = t10_5.w * unity_SpecCube0_HDR.x;
- t16_8.xyz = t10_5.xyz * t16_1.xxx;
- t16_1.xyz = t16_8.xyz * t16_11.xyz + t16_13.xyz;
- t16_3.x = dot(vs_TEXCOORD1.xyz, t10_4.xzw);
- t16_3.y = dot(vs_TEXCOORD2.xyz, t10_4.xzw);
- t16_3.z = dot(vs_TEXCOORD3.xyz, t10_4.xzw);
- t30 = dot((-t0.xyz), t16_3.xyz);
- t30 = t30 + t30;
- t0.xyz = t16_3.xyz * (-vec3(t30)) + (-t0.xyz);
- t10_0.xyz = texture(_Cube, t0.xyz).xyz;
- t16_0.xyz = t10_2.zzz * t10_0.xyz;
- t16_1.xyz = t16_0.xyz * vec3(_Cubepower) + t16_1.xyz;
- SV_Target0.xyz = t16_1.xyz;
- SV_Target0.w = 1.0;
- return;
- }
-
- #endif
- "
- }
- }
- Program "fp" {
- SubProgram "gles " {
- Keywords { "DIRECTIONAL" "SHADOWS_OFF" "LIGHTMAP_OFF" "DIRLIGHTMAP_OFF" "DYNAMICLIGHTMAP_OFF" }
- "!!GLES"
- }
- SubProgram "gles3 " {
- Keywords { "DIRECTIONAL" "SHADOWS_OFF" "LIGHTMAP_OFF" "DIRLIGHTMAP_OFF" "DYNAMICLIGHTMAP_OFF" }
- "!!GLES3"
- }
- }
- }
- Pass {
- Name "FORWARD"
- Tags { "LIGHTMODE"="ForwardAdd" "RenderType"="Opaque" }
- ZWrite Off
- Blend One One
- GpuProgramID 115460
- Program "vp" {
- SubProgram "gles " {
- Keywords { "POINT" }
- "!!GLES
- #version 100
-
- #ifdef VERTEX
- attribute vec4 _glesTANGENT;
- attribute vec4 _glesVertex;
- attribute vec3 _glesNormal;
- attribute vec4 _glesMultiTexCoord0;
- uniform highp mat4 glstate_matrix_mvp;
- uniform highp mat4 _Object2World;
- uniform highp mat4 _World2Object;
- uniform highp vec4 unity_WorldTransformParams;
- uniform highp vec4 _MainTex_ST;
- uniform highp vec4 _BumpMap_ST;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- lowp float tangentSign_1;
- lowp vec3 worldTangent_2;
- lowp vec3 worldNormal_3;
- highp vec4 tmpvar_4;
- tmpvar_4.xy = ((_glesMultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
- tmpvar_4.zw = ((_glesMultiTexCoord0.xy * _BumpMap_ST.xy) + _BumpMap_ST.zw);
- highp vec4 v_5;
- v_5.x = _World2Object[0].x;
- v_5.y = _World2Object[1].x;
- v_5.z = _World2Object[2].x;
- v_5.w = _World2Object[3].x;
- highp vec4 v_6;
- v_6.x = _World2Object[0].y;
- v_6.y = _World2Object[1].y;
- v_6.z = _World2Object[2].y;
- v_6.w = _World2Object[3].y;
- highp vec4 v_7;
- v_7.x = _World2Object[0].z;
- v_7.y = _World2Object[1].z;
- v_7.z = _World2Object[2].z;
- v_7.w = _World2Object[3].z;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize(((
- (v_5.xyz * _glesNormal.x)
- +
- (v_6.xyz * _glesNormal.y)
- ) + (v_7.xyz * _glesNormal.z)));
- worldNormal_3 = tmpvar_8;
- highp mat3 tmpvar_9;
- tmpvar_9[0] = _Object2World[0].xyz;
- tmpvar_9[1] = _Object2World[1].xyz;
- tmpvar_9[2] = _Object2World[2].xyz;
- highp vec3 tmpvar_10;
- tmpvar_10 = normalize((tmpvar_9 * _glesTANGENT.xyz));
- worldTangent_2 = tmpvar_10;
- highp float tmpvar_11;
- tmpvar_11 = (_glesTANGENT.w * unity_WorldTransformParams.w);
- tangentSign_1 = tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = (((worldNormal_3.yzx * worldTangent_2.zxy) - (worldNormal_3.zxy * worldTangent_2.yzx)) * tangentSign_1);
- lowp vec3 tmpvar_13;
- tmpvar_13.x = worldTangent_2.x;
- tmpvar_13.y = tmpvar_12.x;
- tmpvar_13.z = worldNormal_3.x;
- lowp vec3 tmpvar_14;
- tmpvar_14.x = worldTangent_2.y;
- tmpvar_14.y = tmpvar_12.y;
- tmpvar_14.z = worldNormal_3.y;
- lowp vec3 tmpvar_15;
- tmpvar_15.x = worldTangent_2.z;
- tmpvar_15.y = tmpvar_12.z;
- tmpvar_15.z = worldNormal_3.z;
- gl_Position = (glstate_matrix_mvp * _glesVertex);
- xlv_TEXCOORD0 = tmpvar_4;
- xlv_TEXCOORD1 = tmpvar_13;
- xlv_TEXCOORD2 = tmpvar_14;
- xlv_TEXCOORD3 = tmpvar_15;
- xlv_TEXCOORD4 = (_Object2World * _glesVertex).xyz;
- }
-
-
- #endif
- #ifdef FRAGMENT
- uniform highp vec3 _WorldSpaceCameraPos;
- uniform highp vec4 _WorldSpaceLightPos0;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform lowp vec4 _LightColor0;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform sampler2D _LightTexture0;
- uniform mediump mat4 _LightMatrix0;
- uniform sampler2D _MainTex;
- uniform sampler2D _BumpMap;
- uniform sampler2D _SpecTex;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- mediump vec3 tmpvar_1;
- mediump vec3 tmpvar_2;
- lowp vec3 worldN_3;
- lowp vec4 c_4;
- lowp vec3 worldViewDir_5;
- lowp vec3 lightDir_6;
- highp vec3 tmpvar_7;
- tmpvar_7 = normalize((_WorldSpaceLightPos0.xyz - xlv_TEXCOORD4));
- lightDir_6 = tmpvar_7;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize((_WorldSpaceCameraPos - xlv_TEXCOORD4));
- worldViewDir_5 = tmpvar_8;
- lowp vec3 tmpvar_9;
- mediump float tmpvar_10;
- mediump float tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = ((texture2D (_BumpMap, xlv_TEXCOORD0.zw).xyz * 2.0) - 1.0);
- lowp vec4 tmpvar_13;
- tmpvar_13 = texture2D (_SpecTex, xlv_TEXCOORD0.xy);
- tmpvar_9 = texture2D (_MainTex, xlv_TEXCOORD0.xy).xyz;
- tmpvar_11 = (tmpvar_13.x * _SmoothnessIntensity);
- tmpvar_10 = (tmpvar_13.y * _MetallicIntensity);
- highp vec4 tmpvar_14;
- tmpvar_14.w = 1.0;
- tmpvar_14.xyz = xlv_TEXCOORD4;
- highp vec3 tmpvar_15;
- tmpvar_15 = (_LightMatrix0 * tmpvar_14).xyz;
- highp float tmpvar_16;
- tmpvar_16 = dot (tmpvar_15, tmpvar_15);
- lowp float tmpvar_17;
- tmpvar_17 = texture2D (_LightTexture0, vec2(tmpvar_16)).w;
- worldN_3.x = dot (xlv_TEXCOORD1, tmpvar_12);
- worldN_3.y = dot (xlv_TEXCOORD2, tmpvar_12);
- worldN_3.z = dot (xlv_TEXCOORD3, tmpvar_12);
- tmpvar_1 = _LightColor0.xyz;
- tmpvar_2 = lightDir_6;
- mediump vec3 normal_18;
- normal_18 = worldN_3;
- tmpvar_1 = (tmpvar_1 * tmpvar_17);
- lowp vec3 tmpvar_19;
- mediump vec3 viewDir_20;
- viewDir_20 = worldViewDir_5;
- mediump vec4 c_21;
- lowp vec3 tmpvar_22;
- tmpvar_22 = normalize(worldN_3);
- mediump vec3 tmpvar_23;
- mediump vec3 albedo_24;
- albedo_24 = tmpvar_9;
- tmpvar_23 = (albedo_24 * (unity_ColorSpaceDielectricSpec.w - (tmpvar_10 * unity_ColorSpaceDielectricSpec.w)));
- tmpvar_19 = tmpvar_23;
- mediump vec3 diffColor_25;
- diffColor_25 = tmpvar_19;
- tmpvar_19 = diffColor_25;
- mediump vec3 diffColor_26;
- diffColor_26 = tmpvar_19;
- mediump vec3 normal_27;
- normal_27 = tmpvar_22;
- mediump vec3 tmpvar_28;
- mediump vec3 inVec_29;
- inVec_29 = (tmpvar_2 + viewDir_20);
- tmpvar_28 = (inVec_29 * inversesqrt(max (0.001,
- dot (inVec_29, inVec_29)
- )));
- mediump float tmpvar_30;
- tmpvar_30 = max (0.0, dot (tmpvar_2, tmpvar_28));
- mediump float tmpvar_31;
- tmpvar_31 = (1.0 - tmpvar_11);
- mediump float tmpvar_32;
- mediump float tmpvar_33;
- tmpvar_33 = max ((10.0 / log2(
- (((1.0 - tmpvar_31) * 0.968) + 0.03)
- )), -255.937);
- tmpvar_32 = (tmpvar_33 * tmpvar_33);
- c_21.xyz = (((diffColor_26 +
- (clamp (((
- (tmpvar_32 + 1.0)
- *
- pow (max (0.0, dot (normal_27, tmpvar_28)), tmpvar_32)
- ) / (
- ((unity_LightGammaCorrectionConsts.z * ((
- (tmpvar_30 * tmpvar_30)
- * tmpvar_11) + (tmpvar_31 * tmpvar_31))) * tmpvar_30)
- + 0.0001)), 0.0, 100.0) * mix (unity_ColorSpaceDielectricSpec.xyz, albedo_24, vec3(tmpvar_10)))
- ) * tmpvar_1) * max (0.0, dot (normal_18, tmpvar_2)));
- c_21.w = 0.0;
- c_4.xyz = c_21.xyz;
- c_4.w = 1.0;
- gl_FragData[0] = c_4;
- }
-
-
- #endif
- "
- }
- SubProgram "gles3 " {
- Keywords { "POINT" }
- "!!GLES3
- #ifdef VERTEX
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform mediump mat4 _LightMatrix0;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- in highp vec4 in_POSITION0;
- in highp vec4 in_TANGENT0;
- in highp vec3 in_NORMAL0;
- in highp vec4 in_TEXCOORD0;
- out highp vec4 vs_TEXCOORD0;
- out lowp vec3 vs_TEXCOORD1;
- out lowp vec3 vs_TEXCOORD2;
- out lowp vec3 vs_TEXCOORD3;
- out highp vec3 vs_TEXCOORD4;
- highp vec4 t0;
- highp vec3 t1;
- lowp vec3 t10_2;
- highp float t3;
- highp float t9;
- void main()
- {
- t0 = in_POSITION0.yyyy * glstate_matrix_mvp[1];
- t0 = glstate_matrix_mvp[0] * in_POSITION0.xxxx + t0;
- t0 = glstate_matrix_mvp[2] * in_POSITION0.zzzz + t0;
- gl_Position = glstate_matrix_mvp[3] * in_POSITION0.wwww + t0;
- vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
- vs_TEXCOORD0.zw = in_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
- t0.y = in_NORMAL0.x * _World2Object[0].x;
- t0.z = in_NORMAL0.x * _World2Object[1].x;
- t0.x = in_NORMAL0.x * _World2Object[2].x;
- t1.y = in_NORMAL0.y * _World2Object[0].y;
- t1.z = in_NORMAL0.y * _World2Object[1].y;
- t1.x = in_NORMAL0.y * _World2Object[2].y;
- t0.xyz = t0.xyz + t1.xyz;
- t1.y = in_NORMAL0.z * _World2Object[0].z;
- t1.z = in_NORMAL0.z * _World2Object[1].z;
- t1.x = in_NORMAL0.z * _World2Object[2].z;
- t0.xyz = t0.xyz + t1.xyz;
- t9 = dot(t0.xyz, t0.xyz);
- t9 = inversesqrt(t9);
- t0.xyz = vec3(t9) * t0.xyz;
- vs_TEXCOORD1.z = t0.y;
- t1.xyz = in_TANGENT0.yyy * _Object2World[1].yzx;
- t1.xyz = _Object2World[0].yzx * in_TANGENT0.xxx + t1.xyz;
- t1.xyz = _Object2World[2].yzx * in_TANGENT0.zzz + t1.xyz;
- t9 = dot(t1.xyz, t1.xyz);
- t9 = inversesqrt(t9);
- t1.xyz = vec3(t9) * t1.xyz;
- t10_2.xyz = t0.xyz * t1.xyz;
- t10_2.xyz = t0.zxy * t1.yzx + (-t10_2.xyz);
- t3 = in_TANGENT0.w * unity_WorldTransformParams.w;
- t10_2.xyz = vec3(t3) * t10_2.xyz;
- vs_TEXCOORD1.y = t10_2.x;
- vs_TEXCOORD1.x = t1.z;
- vs_TEXCOORD2.z = t0.z;
- vs_TEXCOORD3.z = t0.x;
- vs_TEXCOORD2.x = t1.x;
- vs_TEXCOORD3.x = t1.y;
- vs_TEXCOORD2.y = t10_2.y;
- vs_TEXCOORD3.y = t10_2.z;
- t0.xyz = in_POSITION0.yyy * _Object2World[1].xyz;
- t0.xyz = _Object2World[0].xyz * in_POSITION0.xxx + t0.xyz;
- t0.xyz = _Object2World[2].xyz * in_POSITION0.zzz + t0.xyz;
- vs_TEXCOORD4.xyz = _Object2World[3].xyz * in_POSITION0.www + t0.xyz;
- return;
- }
-
- #endif
- #ifdef FRAGMENT
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform mediump mat4 _LightMatrix0;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- uniform lowp sampler2D _MainTex;
- uniform lowp sampler2D _BumpMap;
- uniform lowp sampler2D _SpecTex;
- uniform lowp sampler2D _LightTexture0;
- in highp vec4 vs_TEXCOORD0;
- in lowp vec3 vs_TEXCOORD1;
- in lowp vec3 vs_TEXCOORD2;
- in lowp vec3 vs_TEXCOORD3;
- in highp vec3 vs_TEXCOORD4;
- layout(location = 0) out lowp vec4 SV_Target0;
- highp vec3 t0;
- mediump vec2 t16_0;
- lowp vec4 t10_0;
- highp vec3 t1;
- mediump vec4 t16_2;
- lowp vec3 t10_3;
- lowp vec3 t10_4;
- mediump vec3 t16_5;
- mediump vec3 t16_8;
- lowp vec2 t10_12;
- mediump float t16_14;
- highp float t18;
- highp float t19;
- mediump float t16_20;
- void main()
- {
- t0.xyz = (-vs_TEXCOORD4.xyz) + _WorldSpaceCameraPos.xyzx.xyz;
- t18 = dot(t0.xyz, t0.xyz);
- t18 = inversesqrt(t18);
- t1.xyz = (-vs_TEXCOORD4.xyz) + _WorldSpaceLightPos0.xyz;
- t19 = dot(t1.xyz, t1.xyz);
- t19 = inversesqrt(t19);
- t1.xyz = vec3(t19) * t1.xyz;
- t16_2.xyz = t0.xyz * vec3(t18) + t1.xyz;
- t16_20 = dot(t16_2.xyz, t16_2.xyz);
- t16_0.x = max(t16_20, 0.00100000005);
- t16_20 = inversesqrt(t16_0.x);
- t16_2.xyz = vec3(t16_20) * t16_2.xyz;
- t10_0.xyz = texture(_BumpMap, vs_TEXCOORD0.zw).xyz;
- t10_3.xyz = t10_0.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0);
- t10_4.x = dot(vs_TEXCOORD1.xyz, t10_3.xyz);
- t10_4.y = dot(vs_TEXCOORD2.xyz, t10_3.xyz);
- t10_4.z = dot(vs_TEXCOORD3.xyz, t10_3.xyz);
- t10_3.x = dot(t10_4.xyz, t10_4.xyz);
- t10_3.x = inversesqrt(t10_3.x);
- t10_3.xyz = t10_3.xxx * t10_4.xyz;
- t16_2.w = dot(t10_4.xyz, t1.xyz);
- t16_5.x = dot(t1.xyz, t16_2.xyz);
- t16_2.x = dot(t10_3.xyz, t16_2.xyz);
- t16_0.xy = max(t16_2.xw, vec2(0.0, 0.0));
- t16_2.x = log2(t16_0.x);
- t16_0.x = max(t16_5.x, 0.0);
- t10_12.xy = texture(_SpecTex, vs_TEXCOORD0.xy).xy;
- t16_8.x = (-t10_12.x) * _SmoothnessIntensity + 1.0;
- t10_3.xy = t10_12.xy * vec2(_SmoothnessIntensity, _MetallicIntensity);
- t16_14 = (-t16_8.x) + 1.0;
- t16_14 = t16_14 * 0.967999995 + 0.0299999993;
- t16_14 = log2(t16_14);
- t16_14 = 10.0 / t16_14;
- t16_8.y = max(t16_14, -255.936996);
- t16_8.xz = t16_8.xy * t16_8.xy;
- t16_14 = t16_8.y * t16_8.y + 1.0;
- t16_2.x = t16_2.x * t16_8.z;
- t16_2.x = exp2(t16_2.x);
- t16_2.x = t16_2.x * t16_14;
- t16_14 = t16_0.x * t16_0.x;
- t16_8.x = t16_14 * t10_3.x + t16_8.x;
- t16_8.x = t16_8.x * unity_LightGammaCorrectionConsts.z;
- t16_0.x = t16_8.x * t16_0.x + 9.99999975e-05;
- t16_0.x = t16_2.x / t16_0.x;
- t16_2.x = max(t16_0.x, 0.0);
- t16_2.x = min(t16_2.x, 100.0);
- t10_0.xzw = texture(_MainTex, vs_TEXCOORD0.xy).xyz;
- t16_8.xyz = t10_0.xzw + (-unity_ColorSpaceDielectricSpec.xyz);
- t16_8.xyz = t10_3.yyy * t16_8.xyz + unity_ColorSpaceDielectricSpec.xyz;
- t16_5.x = (-t10_3.y) * unity_ColorSpaceDielectricSpec.w + unity_ColorSpaceDielectricSpec.w;
- t16_2.xyz = t16_8.xyz * t16_2.xxx;
- t16_2.xyz = t10_0.xzw * t16_5.xxx + t16_2.xyz;
- t16_5.xyz = vs_TEXCOORD4.yyy * _LightMatrix0[1].xyz;
- t16_5.xyz = _LightMatrix0[0].xyz * vs_TEXCOORD4.xxx + t16_5.xyz;
- t16_5.xyz = _LightMatrix0[2].xyz * vs_TEXCOORD4.zzz + t16_5.xyz;
- t16_5.xyz = t16_5.xyz + _LightMatrix0[3].xyz;
- t16_0.x = dot(t16_5.xyz, t16_5.xyz);
- t10_0.x = texture(_LightTexture0, t16_0.xx).w;
- t16_5.xyz = t10_0.xxx * _LightColor0.xyz;
- t16_2.xyz = t16_2.xyz * t16_5.xyz;
- t16_2.xyz = t16_0.yyy * t16_2.xyz;
- SV_Target0.xyz = t16_2.xyz;
- SV_Target0.w = 1.0;
- return;
- }
-
- #endif
- "
- }
- SubProgram "gles " {
- Keywords { "DIRECTIONAL" }
- "!!GLES
- #version 100
-
- #ifdef VERTEX
- attribute vec4 _glesTANGENT;
- attribute vec4 _glesVertex;
- attribute vec3 _glesNormal;
- attribute vec4 _glesMultiTexCoord0;
- uniform highp mat4 glstate_matrix_mvp;
- uniform highp mat4 _Object2World;
- uniform highp mat4 _World2Object;
- uniform highp vec4 unity_WorldTransformParams;
- uniform highp vec4 _MainTex_ST;
- uniform highp vec4 _BumpMap_ST;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- lowp float tangentSign_1;
- lowp vec3 worldTangent_2;
- lowp vec3 worldNormal_3;
- highp vec4 tmpvar_4;
- tmpvar_4.xy = ((_glesMultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
- tmpvar_4.zw = ((_glesMultiTexCoord0.xy * _BumpMap_ST.xy) + _BumpMap_ST.zw);
- highp vec4 v_5;
- v_5.x = _World2Object[0].x;
- v_5.y = _World2Object[1].x;
- v_5.z = _World2Object[2].x;
- v_5.w = _World2Object[3].x;
- highp vec4 v_6;
- v_6.x = _World2Object[0].y;
- v_6.y = _World2Object[1].y;
- v_6.z = _World2Object[2].y;
- v_6.w = _World2Object[3].y;
- highp vec4 v_7;
- v_7.x = _World2Object[0].z;
- v_7.y = _World2Object[1].z;
- v_7.z = _World2Object[2].z;
- v_7.w = _World2Object[3].z;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize(((
- (v_5.xyz * _glesNormal.x)
- +
- (v_6.xyz * _glesNormal.y)
- ) + (v_7.xyz * _glesNormal.z)));
- worldNormal_3 = tmpvar_8;
- highp mat3 tmpvar_9;
- tmpvar_9[0] = _Object2World[0].xyz;
- tmpvar_9[1] = _Object2World[1].xyz;
- tmpvar_9[2] = _Object2World[2].xyz;
- highp vec3 tmpvar_10;
- tmpvar_10 = normalize((tmpvar_9 * _glesTANGENT.xyz));
- worldTangent_2 = tmpvar_10;
- highp float tmpvar_11;
- tmpvar_11 = (_glesTANGENT.w * unity_WorldTransformParams.w);
- tangentSign_1 = tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = (((worldNormal_3.yzx * worldTangent_2.zxy) - (worldNormal_3.zxy * worldTangent_2.yzx)) * tangentSign_1);
- lowp vec3 tmpvar_13;
- tmpvar_13.x = worldTangent_2.x;
- tmpvar_13.y = tmpvar_12.x;
- tmpvar_13.z = worldNormal_3.x;
- lowp vec3 tmpvar_14;
- tmpvar_14.x = worldTangent_2.y;
- tmpvar_14.y = tmpvar_12.y;
- tmpvar_14.z = worldNormal_3.y;
- lowp vec3 tmpvar_15;
- tmpvar_15.x = worldTangent_2.z;
- tmpvar_15.y = tmpvar_12.z;
- tmpvar_15.z = worldNormal_3.z;
- gl_Position = (glstate_matrix_mvp * _glesVertex);
- xlv_TEXCOORD0 = tmpvar_4;
- xlv_TEXCOORD1 = tmpvar_13;
- xlv_TEXCOORD2 = tmpvar_14;
- xlv_TEXCOORD3 = tmpvar_15;
- xlv_TEXCOORD4 = (_Object2World * _glesVertex).xyz;
- }
-
-
- #endif
- #ifdef FRAGMENT
- uniform highp vec3 _WorldSpaceCameraPos;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform lowp vec4 _LightColor0;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform sampler2D _MainTex;
- uniform sampler2D _BumpMap;
- uniform sampler2D _SpecTex;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- mediump vec3 tmpvar_1;
- mediump vec3 tmpvar_2;
- lowp vec3 worldN_3;
- lowp vec4 c_4;
- lowp vec3 worldViewDir_5;
- lowp vec3 lightDir_6;
- mediump vec3 tmpvar_7;
- tmpvar_7 = _WorldSpaceLightPos0.xyz;
- lightDir_6 = tmpvar_7;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize((_WorldSpaceCameraPos - xlv_TEXCOORD4));
- worldViewDir_5 = tmpvar_8;
- lowp vec3 tmpvar_9;
- mediump float tmpvar_10;
- mediump float tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = ((texture2D (_BumpMap, xlv_TEXCOORD0.zw).xyz * 2.0) - 1.0);
- lowp vec4 tmpvar_13;
- tmpvar_13 = texture2D (_SpecTex, xlv_TEXCOORD0.xy);
- tmpvar_9 = texture2D (_MainTex, xlv_TEXCOORD0.xy).xyz;
- tmpvar_11 = (tmpvar_13.x * _SmoothnessIntensity);
- tmpvar_10 = (tmpvar_13.y * _MetallicIntensity);
- worldN_3.x = dot (xlv_TEXCOORD1, tmpvar_12);
- worldN_3.y = dot (xlv_TEXCOORD2, tmpvar_12);
- worldN_3.z = dot (xlv_TEXCOORD3, tmpvar_12);
- tmpvar_1 = _LightColor0.xyz;
- tmpvar_2 = lightDir_6;
- mediump vec3 normal_14;
- normal_14 = worldN_3;
- lowp vec3 tmpvar_15;
- mediump vec3 viewDir_16;
- viewDir_16 = worldViewDir_5;
- mediump vec4 c_17;
- lowp vec3 tmpvar_18;
- tmpvar_18 = normalize(worldN_3);
- mediump vec3 tmpvar_19;
- mediump vec3 albedo_20;
- albedo_20 = tmpvar_9;
- tmpvar_19 = (albedo_20 * (unity_ColorSpaceDielectricSpec.w - (tmpvar_10 * unity_ColorSpaceDielectricSpec.w)));
- tmpvar_15 = tmpvar_19;
- mediump vec3 diffColor_21;
- diffColor_21 = tmpvar_15;
- tmpvar_15 = diffColor_21;
- mediump vec3 diffColor_22;
- diffColor_22 = tmpvar_15;
- mediump vec3 normal_23;
- normal_23 = tmpvar_18;
- mediump vec3 tmpvar_24;
- mediump vec3 inVec_25;
- inVec_25 = (tmpvar_2 + viewDir_16);
- tmpvar_24 = (inVec_25 * inversesqrt(max (0.001,
- dot (inVec_25, inVec_25)
- )));
- mediump float tmpvar_26;
- tmpvar_26 = max (0.0, dot (tmpvar_2, tmpvar_24));
- mediump float tmpvar_27;
- tmpvar_27 = (1.0 - tmpvar_11);
- mediump float tmpvar_28;
- mediump float tmpvar_29;
- tmpvar_29 = max ((10.0 / log2(
- (((1.0 - tmpvar_27) * 0.968) + 0.03)
- )), -255.937);
- tmpvar_28 = (tmpvar_29 * tmpvar_29);
- c_17.xyz = (((diffColor_22 +
- (clamp (((
- (tmpvar_28 + 1.0)
- *
- pow (max (0.0, dot (normal_23, tmpvar_24)), tmpvar_28)
- ) / (
- ((unity_LightGammaCorrectionConsts.z * ((
- (tmpvar_26 * tmpvar_26)
- * tmpvar_11) + (tmpvar_27 * tmpvar_27))) * tmpvar_26)
- + 0.0001)), 0.0, 100.0) * mix (unity_ColorSpaceDielectricSpec.xyz, albedo_20, vec3(tmpvar_10)))
- ) * tmpvar_1) * max (0.0, dot (normal_14, tmpvar_2)));
- c_17.w = 0.0;
- c_4.xyz = c_17.xyz;
- c_4.w = 1.0;
- gl_FragData[0] = c_4;
- }
-
-
- #endif
- "
- }
- SubProgram "gles3 " {
- Keywords { "DIRECTIONAL" }
- "!!GLES3
- #ifdef VERTEX
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- in highp vec4 in_POSITION0;
- in highp vec4 in_TANGENT0;
- in highp vec3 in_NORMAL0;
- in highp vec4 in_TEXCOORD0;
- out highp vec4 vs_TEXCOORD0;
- out lowp vec3 vs_TEXCOORD1;
- out lowp vec3 vs_TEXCOORD2;
- out lowp vec3 vs_TEXCOORD3;
- out highp vec3 vs_TEXCOORD4;
- highp vec4 t0;
- highp vec3 t1;
- lowp vec3 t10_2;
- highp float t3;
- highp float t9;
- void main()
- {
- t0 = in_POSITION0.yyyy * glstate_matrix_mvp[1];
- t0 = glstate_matrix_mvp[0] * in_POSITION0.xxxx + t0;
- t0 = glstate_matrix_mvp[2] * in_POSITION0.zzzz + t0;
- gl_Position = glstate_matrix_mvp[3] * in_POSITION0.wwww + t0;
- vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
- vs_TEXCOORD0.zw = in_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
- t0.y = in_NORMAL0.x * _World2Object[0].x;
- t0.z = in_NORMAL0.x * _World2Object[1].x;
- t0.x = in_NORMAL0.x * _World2Object[2].x;
- t1.y = in_NORMAL0.y * _World2Object[0].y;
- t1.z = in_NORMAL0.y * _World2Object[1].y;
- t1.x = in_NORMAL0.y * _World2Object[2].y;
- t0.xyz = t0.xyz + t1.xyz;
- t1.y = in_NORMAL0.z * _World2Object[0].z;
- t1.z = in_NORMAL0.z * _World2Object[1].z;
- t1.x = in_NORMAL0.z * _World2Object[2].z;
- t0.xyz = t0.xyz + t1.xyz;
- t9 = dot(t0.xyz, t0.xyz);
- t9 = inversesqrt(t9);
- t0.xyz = vec3(t9) * t0.xyz;
- vs_TEXCOORD1.z = t0.y;
- t1.xyz = in_TANGENT0.yyy * _Object2World[1].yzx;
- t1.xyz = _Object2World[0].yzx * in_TANGENT0.xxx + t1.xyz;
- t1.xyz = _Object2World[2].yzx * in_TANGENT0.zzz + t1.xyz;
- t9 = dot(t1.xyz, t1.xyz);
- t9 = inversesqrt(t9);
- t1.xyz = vec3(t9) * t1.xyz;
- t10_2.xyz = t0.xyz * t1.xyz;
- t10_2.xyz = t0.zxy * t1.yzx + (-t10_2.xyz);
- t3 = in_TANGENT0.w * unity_WorldTransformParams.w;
- t10_2.xyz = vec3(t3) * t10_2.xyz;
- vs_TEXCOORD1.y = t10_2.x;
- vs_TEXCOORD1.x = t1.z;
- vs_TEXCOORD2.z = t0.z;
- vs_TEXCOORD3.z = t0.x;
- vs_TEXCOORD2.x = t1.x;
- vs_TEXCOORD3.x = t1.y;
- vs_TEXCOORD2.y = t10_2.y;
- vs_TEXCOORD3.y = t10_2.z;
- t0.xyz = in_POSITION0.yyy * _Object2World[1].xyz;
- t0.xyz = _Object2World[0].xyz * in_POSITION0.xxx + t0.xyz;
- t0.xyz = _Object2World[2].xyz * in_POSITION0.zzz + t0.xyz;
- vs_TEXCOORD4.xyz = _Object2World[3].xyz * in_POSITION0.www + t0.xyz;
- return;
- }
-
- #endif
- #ifdef FRAGMENT
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- uniform lowp sampler2D _MainTex;
- uniform lowp sampler2D _BumpMap;
- uniform lowp sampler2D _SpecTex;
- in highp vec4 vs_TEXCOORD0;
- in lowp vec3 vs_TEXCOORD1;
- in lowp vec3 vs_TEXCOORD2;
- in lowp vec3 vs_TEXCOORD3;
- in highp vec3 vs_TEXCOORD4;
- layout(location = 0) out lowp vec4 SV_Target0;
- highp vec3 t0;
- mediump float t16_0;
- lowp vec3 t10_0;
- mediump vec4 t16_1;
- lowp vec3 t10_2;
- lowp vec3 t10_3;
- mediump float t16_4;
- mediump vec2 t16_5;
- lowp vec3 t10_5;
- mediump vec3 t16_6;
- lowp vec2 t10_10;
- mediump float t16_11;
- highp float t15;
- mediump float t16_16;
- void main()
- {
- t0.xyz = (-vs_TEXCOORD4.xyz) + _WorldSpaceCameraPos.xyzx.xyz;
- t15 = dot(t0.xyz, t0.xyz);
- t15 = inversesqrt(t15);
- t16_1.xyz = t0.xyz * vec3(t15) + _WorldSpaceLightPos0.xyz;
- t16_16 = dot(t16_1.xyz, t16_1.xyz);
- t16_0 = max(t16_16, 0.00100000005);
- t16_16 = inversesqrt(t16_0);
- t16_1.xyz = vec3(t16_16) * t16_1.xyz;
- t10_0.xyz = texture(_BumpMap, vs_TEXCOORD0.zw).xyz;
- t10_2.xyz = t10_0.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0);
- t10_3.x = dot(vs_TEXCOORD1.xyz, t10_2.xyz);
- t10_3.y = dot(vs_TEXCOORD2.xyz, t10_2.xyz);
- t10_3.z = dot(vs_TEXCOORD3.xyz, t10_2.xyz);
- t10_2.x = dot(t10_3.xyz, t10_3.xyz);
- t10_2.x = inversesqrt(t10_2.x);
- t10_2.xyz = t10_2.xxx * t10_3.xyz;
- t16_16 = dot(t10_3.xyz, _WorldSpaceLightPos0.xyz);
- t16_0 = max(t16_16, 0.0);
- t16_1.w = dot(t10_2.xyz, t16_1.xyz);
- t16_1.x = dot(_WorldSpaceLightPos0.xyz, t16_1.xyz);
- t16_5.xy = max(t16_1.xw, vec2(0.0, 0.0));
- t16_1.x = log2(t16_5.y);
- t10_10.xy = texture(_SpecTex, vs_TEXCOORD0.xy).xy;
- t16_6.x = (-t10_10.x) * _SmoothnessIntensity + 1.0;
- t10_2.xy = t10_10.xy * vec2(_SmoothnessIntensity, _MetallicIntensity);
- t16_11 = (-t16_6.x) + 1.0;
- t16_11 = t16_11 * 0.967999995 + 0.0299999993;
- t16_11 = log2(t16_11);
- t16_11 = 10.0 / t16_11;
- t16_6.y = max(t16_11, -255.936996);
- t16_6.xz = t16_6.xy * t16_6.xy;
- t16_11 = t16_6.y * t16_6.y + 1.0;
- t16_1.x = t16_1.x * t16_6.z;
- t16_1.x = exp2(t16_1.x);
- t16_1.x = t16_1.x * t16_11;
- t16_11 = t16_5.x * t16_5.x;
- t16_6.x = t16_11 * t10_2.x + t16_6.x;
- t16_6.x = t16_6.x * unity_LightGammaCorrectionConsts.z;
- t16_5.x = t16_6.x * t16_5.x + 9.99999975e-05;
- t16_5.x = t16_1.x / t16_5.x;
- t16_1.x = max(t16_5.x, 0.0);
- t16_1.x = min(t16_1.x, 100.0);
- t10_5.xyz = texture(_MainTex, vs_TEXCOORD0.xy).xyz;
- t16_6.xyz = t10_5.xyz + (-unity_ColorSpaceDielectricSpec.xyz);
- t16_6.xyz = t10_2.yyy * t16_6.xyz + unity_ColorSpaceDielectricSpec.xyz;
- t16_4 = (-t10_2.y) * unity_ColorSpaceDielectricSpec.w + unity_ColorSpaceDielectricSpec.w;
- t16_1.xyz = t16_6.xyz * t16_1.xxx;
- t16_1.xyz = t10_5.xyz * vec3(t16_4) + t16_1.xyz;
- t16_1.xyz = t16_1.xyz * _LightColor0.xyz;
- t16_1.xyz = vec3(t16_0) * t16_1.xyz;
- SV_Target0.xyz = t16_1.xyz;
- SV_Target0.w = 1.0;
- return;
- }
-
- #endif
- "
- }
- SubProgram "gles " {
- Keywords { "SPOT" }
- "!!GLES
- #version 100
-
- #ifdef VERTEX
- attribute vec4 _glesTANGENT;
- attribute vec4 _glesVertex;
- attribute vec3 _glesNormal;
- attribute vec4 _glesMultiTexCoord0;
- uniform highp mat4 glstate_matrix_mvp;
- uniform highp mat4 _Object2World;
- uniform highp mat4 _World2Object;
- uniform highp vec4 unity_WorldTransformParams;
- uniform highp vec4 _MainTex_ST;
- uniform highp vec4 _BumpMap_ST;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- lowp float tangentSign_1;
- lowp vec3 worldTangent_2;
- lowp vec3 worldNormal_3;
- highp vec4 tmpvar_4;
- tmpvar_4.xy = ((_glesMultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
- tmpvar_4.zw = ((_glesMultiTexCoord0.xy * _BumpMap_ST.xy) + _BumpMap_ST.zw);
- highp vec4 v_5;
- v_5.x = _World2Object[0].x;
- v_5.y = _World2Object[1].x;
- v_5.z = _World2Object[2].x;
- v_5.w = _World2Object[3].x;
- highp vec4 v_6;
- v_6.x = _World2Object[0].y;
- v_6.y = _World2Object[1].y;
- v_6.z = _World2Object[2].y;
- v_6.w = _World2Object[3].y;
- highp vec4 v_7;
- v_7.x = _World2Object[0].z;
- v_7.y = _World2Object[1].z;
- v_7.z = _World2Object[2].z;
- v_7.w = _World2Object[3].z;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize(((
- (v_5.xyz * _glesNormal.x)
- +
- (v_6.xyz * _glesNormal.y)
- ) + (v_7.xyz * _glesNormal.z)));
- worldNormal_3 = tmpvar_8;
- highp mat3 tmpvar_9;
- tmpvar_9[0] = _Object2World[0].xyz;
- tmpvar_9[1] = _Object2World[1].xyz;
- tmpvar_9[2] = _Object2World[2].xyz;
- highp vec3 tmpvar_10;
- tmpvar_10 = normalize((tmpvar_9 * _glesTANGENT.xyz));
- worldTangent_2 = tmpvar_10;
- highp float tmpvar_11;
- tmpvar_11 = (_glesTANGENT.w * unity_WorldTransformParams.w);
- tangentSign_1 = tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = (((worldNormal_3.yzx * worldTangent_2.zxy) - (worldNormal_3.zxy * worldTangent_2.yzx)) * tangentSign_1);
- lowp vec3 tmpvar_13;
- tmpvar_13.x = worldTangent_2.x;
- tmpvar_13.y = tmpvar_12.x;
- tmpvar_13.z = worldNormal_3.x;
- lowp vec3 tmpvar_14;
- tmpvar_14.x = worldTangent_2.y;
- tmpvar_14.y = tmpvar_12.y;
- tmpvar_14.z = worldNormal_3.y;
- lowp vec3 tmpvar_15;
- tmpvar_15.x = worldTangent_2.z;
- tmpvar_15.y = tmpvar_12.z;
- tmpvar_15.z = worldNormal_3.z;
- gl_Position = (glstate_matrix_mvp * _glesVertex);
- xlv_TEXCOORD0 = tmpvar_4;
- xlv_TEXCOORD1 = tmpvar_13;
- xlv_TEXCOORD2 = tmpvar_14;
- xlv_TEXCOORD3 = tmpvar_15;
- xlv_TEXCOORD4 = (_Object2World * _glesVertex).xyz;
- }
-
-
- #endif
- #ifdef FRAGMENT
- uniform highp vec3 _WorldSpaceCameraPos;
- uniform highp vec4 _WorldSpaceLightPos0;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform lowp vec4 _LightColor0;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform sampler2D _LightTexture0;
- uniform mediump mat4 _LightMatrix0;
- uniform sampler2D _LightTextureB0;
- uniform sampler2D _MainTex;
- uniform sampler2D _BumpMap;
- uniform sampler2D _SpecTex;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- mediump vec3 tmpvar_1;
- mediump vec3 tmpvar_2;
- lowp vec3 worldN_3;
- lowp vec4 c_4;
- lowp float atten_5;
- mediump vec4 lightCoord_6;
- lowp vec3 worldViewDir_7;
- lowp vec3 lightDir_8;
- highp vec3 tmpvar_9;
- tmpvar_9 = normalize((_WorldSpaceLightPos0.xyz - xlv_TEXCOORD4));
- lightDir_8 = tmpvar_9;
- highp vec3 tmpvar_10;
- tmpvar_10 = normalize((_WorldSpaceCameraPos - xlv_TEXCOORD4));
- worldViewDir_7 = tmpvar_10;
- lowp vec3 tmpvar_11;
- mediump float tmpvar_12;
- mediump float tmpvar_13;
- lowp vec3 tmpvar_14;
- tmpvar_14 = ((texture2D (_BumpMap, xlv_TEXCOORD0.zw).xyz * 2.0) - 1.0);
- lowp vec4 tmpvar_15;
- tmpvar_15 = texture2D (_SpecTex, xlv_TEXCOORD0.xy);
- tmpvar_11 = texture2D (_MainTex, xlv_TEXCOORD0.xy).xyz;
- tmpvar_13 = (tmpvar_15.x * _SmoothnessIntensity);
- tmpvar_12 = (tmpvar_15.y * _MetallicIntensity);
- highp vec4 tmpvar_16;
- tmpvar_16.w = 1.0;
- tmpvar_16.xyz = xlv_TEXCOORD4;
- highp vec4 tmpvar_17;
- tmpvar_17 = (_LightMatrix0 * tmpvar_16);
- lightCoord_6 = tmpvar_17;
- lowp vec4 tmpvar_18;
- mediump vec2 P_19;
- P_19 = ((lightCoord_6.xy / lightCoord_6.w) + 0.5);
- tmpvar_18 = texture2D (_LightTexture0, P_19);
- highp vec3 LightCoord_20;
- LightCoord_20 = lightCoord_6.xyz;
- highp float tmpvar_21;
- tmpvar_21 = dot (LightCoord_20, LightCoord_20);
- lowp vec4 tmpvar_22;
- tmpvar_22 = texture2D (_LightTextureB0, vec2(tmpvar_21));
- mediump float tmpvar_23;
- tmpvar_23 = ((float(
- (lightCoord_6.z > 0.0)
- ) * tmpvar_18.w) * tmpvar_22.w);
- atten_5 = tmpvar_23;
- worldN_3.x = dot (xlv_TEXCOORD1, tmpvar_14);
- worldN_3.y = dot (xlv_TEXCOORD2, tmpvar_14);
- worldN_3.z = dot (xlv_TEXCOORD3, tmpvar_14);
- tmpvar_1 = _LightColor0.xyz;
- tmpvar_2 = lightDir_8;
- mediump vec3 normal_24;
- normal_24 = worldN_3;
- tmpvar_1 = (tmpvar_1 * atten_5);
- lowp vec3 tmpvar_25;
- mediump vec3 viewDir_26;
- viewDir_26 = worldViewDir_7;
- mediump vec4 c_27;
- lowp vec3 tmpvar_28;
- tmpvar_28 = normalize(worldN_3);
- mediump vec3 tmpvar_29;
- mediump vec3 albedo_30;
- albedo_30 = tmpvar_11;
- tmpvar_29 = (albedo_30 * (unity_ColorSpaceDielectricSpec.w - (tmpvar_12 * unity_ColorSpaceDielectricSpec.w)));
- tmpvar_25 = tmpvar_29;
- mediump vec3 diffColor_31;
- diffColor_31 = tmpvar_25;
- tmpvar_25 = diffColor_31;
- mediump vec3 diffColor_32;
- diffColor_32 = tmpvar_25;
- mediump vec3 normal_33;
- normal_33 = tmpvar_28;
- mediump vec3 tmpvar_34;
- mediump vec3 inVec_35;
- inVec_35 = (tmpvar_2 + viewDir_26);
- tmpvar_34 = (inVec_35 * inversesqrt(max (0.001,
- dot (inVec_35, inVec_35)
- )));
- mediump float tmpvar_36;
- tmpvar_36 = max (0.0, dot (tmpvar_2, tmpvar_34));
- mediump float tmpvar_37;
- tmpvar_37 = (1.0 - tmpvar_13);
- mediump float tmpvar_38;
- mediump float tmpvar_39;
- tmpvar_39 = max ((10.0 / log2(
- (((1.0 - tmpvar_37) * 0.968) + 0.03)
- )), -255.937);
- tmpvar_38 = (tmpvar_39 * tmpvar_39);
- c_27.xyz = (((diffColor_32 +
- (clamp (((
- (tmpvar_38 + 1.0)
- *
- pow (max (0.0, dot (normal_33, tmpvar_34)), tmpvar_38)
- ) / (
- ((unity_LightGammaCorrectionConsts.z * ((
- (tmpvar_36 * tmpvar_36)
- * tmpvar_13) + (tmpvar_37 * tmpvar_37))) * tmpvar_36)
- + 0.0001)), 0.0, 100.0) * mix (unity_ColorSpaceDielectricSpec.xyz, albedo_30, vec3(tmpvar_12)))
- ) * tmpvar_1) * max (0.0, dot (normal_24, tmpvar_2)));
- c_27.w = 0.0;
- c_4.xyz = c_27.xyz;
- c_4.w = 1.0;
- gl_FragData[0] = c_4;
- }
-
-
- #endif
- "
- }
- SubProgram "gles3 " {
- Keywords { "SPOT" }
- "!!GLES3
- #ifdef VERTEX
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform mediump mat4 _LightMatrix0;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- in highp vec4 in_POSITION0;
- in highp vec4 in_TANGENT0;
- in highp vec3 in_NORMAL0;
- in highp vec4 in_TEXCOORD0;
- out highp vec4 vs_TEXCOORD0;
- out lowp vec3 vs_TEXCOORD1;
- out lowp vec3 vs_TEXCOORD2;
- out lowp vec3 vs_TEXCOORD3;
- out highp vec3 vs_TEXCOORD4;
- highp vec4 t0;
- highp vec3 t1;
- lowp vec3 t10_2;
- highp float t3;
- highp float t9;
- void main()
- {
- t0 = in_POSITION0.yyyy * glstate_matrix_mvp[1];
- t0 = glstate_matrix_mvp[0] * in_POSITION0.xxxx + t0;
- t0 = glstate_matrix_mvp[2] * in_POSITION0.zzzz + t0;
- gl_Position = glstate_matrix_mvp[3] * in_POSITION0.wwww + t0;
- vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
- vs_TEXCOORD0.zw = in_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
- t0.y = in_NORMAL0.x * _World2Object[0].x;
- t0.z = in_NORMAL0.x * _World2Object[1].x;
- t0.x = in_NORMAL0.x * _World2Object[2].x;
- t1.y = in_NORMAL0.y * _World2Object[0].y;
- t1.z = in_NORMAL0.y * _World2Object[1].y;
- t1.x = in_NORMAL0.y * _World2Object[2].y;
- t0.xyz = t0.xyz + t1.xyz;
- t1.y = in_NORMAL0.z * _World2Object[0].z;
- t1.z = in_NORMAL0.z * _World2Object[1].z;
- t1.x = in_NORMAL0.z * _World2Object[2].z;
- t0.xyz = t0.xyz + t1.xyz;
- t9 = dot(t0.xyz, t0.xyz);
- t9 = inversesqrt(t9);
- t0.xyz = vec3(t9) * t0.xyz;
- vs_TEXCOORD1.z = t0.y;
- t1.xyz = in_TANGENT0.yyy * _Object2World[1].yzx;
- t1.xyz = _Object2World[0].yzx * in_TANGENT0.xxx + t1.xyz;
- t1.xyz = _Object2World[2].yzx * in_TANGENT0.zzz + t1.xyz;
- t9 = dot(t1.xyz, t1.xyz);
- t9 = inversesqrt(t9);
- t1.xyz = vec3(t9) * t1.xyz;
- t10_2.xyz = t0.xyz * t1.xyz;
- t10_2.xyz = t0.zxy * t1.yzx + (-t10_2.xyz);
- t3 = in_TANGENT0.w * unity_WorldTransformParams.w;
- t10_2.xyz = vec3(t3) * t10_2.xyz;
- vs_TEXCOORD1.y = t10_2.x;
- vs_TEXCOORD1.x = t1.z;
- vs_TEXCOORD2.z = t0.z;
- vs_TEXCOORD3.z = t0.x;
- vs_TEXCOORD2.x = t1.x;
- vs_TEXCOORD3.x = t1.y;
- vs_TEXCOORD2.y = t10_2.y;
- vs_TEXCOORD3.y = t10_2.z;
- t0.xyz = in_POSITION0.yyy * _Object2World[1].xyz;
- t0.xyz = _Object2World[0].xyz * in_POSITION0.xxx + t0.xyz;
- t0.xyz = _Object2World[2].xyz * in_POSITION0.zzz + t0.xyz;
- vs_TEXCOORD4.xyz = _Object2World[3].xyz * in_POSITION0.www + t0.xyz;
- return;
- }
-
- #endif
- #ifdef FRAGMENT
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform mediump mat4 _LightMatrix0;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- uniform lowp sampler2D _MainTex;
- uniform lowp sampler2D _BumpMap;
- uniform lowp sampler2D _SpecTex;
- uniform lowp sampler2D _LightTexture0;
- uniform lowp sampler2D _LightTextureB0;
- in highp vec4 vs_TEXCOORD0;
- in lowp vec3 vs_TEXCOORD1;
- in lowp vec3 vs_TEXCOORD2;
- in lowp vec3 vs_TEXCOORD3;
- in highp vec3 vs_TEXCOORD4;
- layout(location = 0) out lowp vec4 SV_Target0;
- mediump vec4 t16_0;
- mediump vec3 t16_1;
- highp vec3 t2;
- mediump float t16_2;
- lowp vec4 t10_2;
- lowp vec3 t10_3;
- highp vec3 t4;
- lowp vec3 t10_5;
- mediump float t16_7;
- mediump float t16_8;
- bool tb8;
- mediump float t16_13;
- mediump float t16_14;
- lowp vec2 t10_14;
- mediump float t16_18;
- mediump float t16_19;
- highp float t20;
- highp float t22;
- void main()
- {
- t16_0 = vs_TEXCOORD4.yyyy * _LightMatrix0[1];
- t16_0 = _LightMatrix0[0] * vs_TEXCOORD4.xxxx + t16_0;
- t16_0 = _LightMatrix0[2] * vs_TEXCOORD4.zzzz + t16_0;
- t16_0 = t16_0 + _LightMatrix0[3];
- t16_1.xy = t16_0.xy / t16_0.ww;
- t16_1.xy = t16_1.xy + vec2(0.5, 0.5);
- t10_2.x = texture(_LightTexture0, t16_1.xy).w;
- tb8 = 0.0<t16_0.z;
- t16_14 = dot(t16_0.xyz, t16_0.xyz);
- t10_14.x = texture(_LightTextureB0, vec2(t16_14)).w;
- t10_3.x = (tb8) ? 1.0 : 0.0;
- t10_3.x = t10_2.x * t10_3.x;
- t10_3.x = t10_14.x * t10_3.x;
- t16_0.xyz = t10_3.xxx * _LightColor0.xyz;
- t2.xyz = (-vs_TEXCOORD4.xyz) + _WorldSpaceCameraPos.xyzx.xyz;
- t20 = dot(t2.xyz, t2.xyz);
- t20 = inversesqrt(t20);
- t4.xyz = (-vs_TEXCOORD4.xyz) + _WorldSpaceLightPos0.xyz;
- t22 = dot(t4.xyz, t4.xyz);
- t22 = inversesqrt(t22);
- t4.xyz = vec3(t22) * t4.xyz;
- t16_1.xyz = t2.xyz * vec3(t20) + t4.xyz;
- t16_18 = dot(t16_1.xyz, t16_1.xyz);
- t16_2 = max(t16_18, 0.00100000005);
- t16_18 = inversesqrt(t16_2);
- t16_1.xyz = vec3(t16_18) * t16_1.xyz;
- t10_2.xyz = texture(_BumpMap, vs_TEXCOORD0.zw).xyz;
- t10_3.xyz = t10_2.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0);
- t10_5.x = dot(vs_TEXCOORD1.xyz, t10_3.xyz);
- t10_5.y = dot(vs_TEXCOORD2.xyz, t10_3.xyz);
- t10_5.z = dot(vs_TEXCOORD3.xyz, t10_3.xyz);
- t10_3.x = dot(t10_5.xyz, t10_5.xyz);
- t10_3.x = inversesqrt(t10_3.x);
- t10_3.xyz = t10_3.xxx * t10_5.xyz;
- t16_18 = dot(t10_5.xyz, t4.xyz);
- t16_19 = dot(t4.xyz, t16_1.xyz);
- t16_1.x = dot(t10_3.xyz, t16_1.xyz);
- t16_2 = max(t16_1.x, 0.0);
- t16_1.x = log2(t16_2);
- t16_2 = max(t16_19, 0.0);
- t16_8 = max(t16_18, 0.0);
- t10_14.xy = texture(_SpecTex, vs_TEXCOORD0.xy).xy;
- t16_18 = (-t10_14.x) * _SmoothnessIntensity + 1.0;
- t10_3.xy = t10_14.xy * vec2(_SmoothnessIntensity, _MetallicIntensity);
- t16_7 = (-t16_18) + 1.0;
- t16_18 = t16_18 * t16_18;
- t16_7 = t16_7 * 0.967999995 + 0.0299999993;
- t16_7 = log2(t16_7);
- t16_7 = 10.0 / t16_7;
- t16_7 = max(t16_7, -255.936996);
- t16_13 = t16_7 * t16_7;
- t16_7 = t16_7 * t16_7 + 1.0;
- t16_1.x = t16_1.x * t16_13;
- t16_1.x = exp2(t16_1.x);
- t16_1.x = t16_1.x * t16_7;
- t16_7 = t16_2 * t16_2;
- t16_18 = t16_7 * t10_3.x + t16_18;
- t16_18 = t16_18 * unity_LightGammaCorrectionConsts.z;
- t16_2 = t16_18 * t16_2 + 9.99999975e-05;
- t16_2 = t16_1.x / t16_2;
- t16_18 = max(t16_2, 0.0);
- t16_18 = min(t16_18, 100.0);
- t10_2.xzw = texture(_MainTex, vs_TEXCOORD0.xy).xyz;
- t16_1.xyz = t10_2.xzw + (-unity_ColorSpaceDielectricSpec.xyz);
- t16_1.xyz = t10_3.yyy * t16_1.xyz + unity_ColorSpaceDielectricSpec.xyz;
- t16_19 = (-t10_3.y) * unity_ColorSpaceDielectricSpec.w + unity_ColorSpaceDielectricSpec.w;
- t16_1.xyz = vec3(t16_18) * t16_1.xyz;
- t16_1.xyz = t10_2.xzw * vec3(t16_19) + t16_1.xyz;
- t16_0.xyz = t16_0.xyz * t16_1.xyz;
- t16_0.xyz = vec3(t16_8) * t16_0.xyz;
- SV_Target0.xyz = t16_0.xyz;
- SV_Target0.w = 1.0;
- return;
- }
-
- #endif
- "
- }
- SubProgram "gles " {
- Keywords { "POINT_COOKIE" }
- "!!GLES
- #version 100
-
- #ifdef VERTEX
- attribute vec4 _glesTANGENT;
- attribute vec4 _glesVertex;
- attribute vec3 _glesNormal;
- attribute vec4 _glesMultiTexCoord0;
- uniform highp mat4 glstate_matrix_mvp;
- uniform highp mat4 _Object2World;
- uniform highp mat4 _World2Object;
- uniform highp vec4 unity_WorldTransformParams;
- uniform highp vec4 _MainTex_ST;
- uniform highp vec4 _BumpMap_ST;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- lowp float tangentSign_1;
- lowp vec3 worldTangent_2;
- lowp vec3 worldNormal_3;
- highp vec4 tmpvar_4;
- tmpvar_4.xy = ((_glesMultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
- tmpvar_4.zw = ((_glesMultiTexCoord0.xy * _BumpMap_ST.xy) + _BumpMap_ST.zw);
- highp vec4 v_5;
- v_5.x = _World2Object[0].x;
- v_5.y = _World2Object[1].x;
- v_5.z = _World2Object[2].x;
- v_5.w = _World2Object[3].x;
- highp vec4 v_6;
- v_6.x = _World2Object[0].y;
- v_6.y = _World2Object[1].y;
- v_6.z = _World2Object[2].y;
- v_6.w = _World2Object[3].y;
- highp vec4 v_7;
- v_7.x = _World2Object[0].z;
- v_7.y = _World2Object[1].z;
- v_7.z = _World2Object[2].z;
- v_7.w = _World2Object[3].z;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize(((
- (v_5.xyz * _glesNormal.x)
- +
- (v_6.xyz * _glesNormal.y)
- ) + (v_7.xyz * _glesNormal.z)));
- worldNormal_3 = tmpvar_8;
- highp mat3 tmpvar_9;
- tmpvar_9[0] = _Object2World[0].xyz;
- tmpvar_9[1] = _Object2World[1].xyz;
- tmpvar_9[2] = _Object2World[2].xyz;
- highp vec3 tmpvar_10;
- tmpvar_10 = normalize((tmpvar_9 * _glesTANGENT.xyz));
- worldTangent_2 = tmpvar_10;
- highp float tmpvar_11;
- tmpvar_11 = (_glesTANGENT.w * unity_WorldTransformParams.w);
- tangentSign_1 = tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = (((worldNormal_3.yzx * worldTangent_2.zxy) - (worldNormal_3.zxy * worldTangent_2.yzx)) * tangentSign_1);
- lowp vec3 tmpvar_13;
- tmpvar_13.x = worldTangent_2.x;
- tmpvar_13.y = tmpvar_12.x;
- tmpvar_13.z = worldNormal_3.x;
- lowp vec3 tmpvar_14;
- tmpvar_14.x = worldTangent_2.y;
- tmpvar_14.y = tmpvar_12.y;
- tmpvar_14.z = worldNormal_3.y;
- lowp vec3 tmpvar_15;
- tmpvar_15.x = worldTangent_2.z;
- tmpvar_15.y = tmpvar_12.z;
- tmpvar_15.z = worldNormal_3.z;
- gl_Position = (glstate_matrix_mvp * _glesVertex);
- xlv_TEXCOORD0 = tmpvar_4;
- xlv_TEXCOORD1 = tmpvar_13;
- xlv_TEXCOORD2 = tmpvar_14;
- xlv_TEXCOORD3 = tmpvar_15;
- xlv_TEXCOORD4 = (_Object2World * _glesVertex).xyz;
- }
-
-
- #endif
- #ifdef FRAGMENT
- uniform highp vec3 _WorldSpaceCameraPos;
- uniform highp vec4 _WorldSpaceLightPos0;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform lowp vec4 _LightColor0;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform lowp samplerCube _LightTexture0;
- uniform mediump mat4 _LightMatrix0;
- uniform sampler2D _LightTextureB0;
- uniform sampler2D _MainTex;
- uniform sampler2D _BumpMap;
- uniform sampler2D _SpecTex;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- mediump vec3 tmpvar_1;
- mediump vec3 tmpvar_2;
- lowp vec3 worldN_3;
- lowp vec4 c_4;
- lowp vec3 worldViewDir_5;
- lowp vec3 lightDir_6;
- highp vec3 tmpvar_7;
- tmpvar_7 = normalize((_WorldSpaceLightPos0.xyz - xlv_TEXCOORD4));
- lightDir_6 = tmpvar_7;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize((_WorldSpaceCameraPos - xlv_TEXCOORD4));
- worldViewDir_5 = tmpvar_8;
- lowp vec3 tmpvar_9;
- mediump float tmpvar_10;
- mediump float tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = ((texture2D (_BumpMap, xlv_TEXCOORD0.zw).xyz * 2.0) - 1.0);
- lowp vec4 tmpvar_13;
- tmpvar_13 = texture2D (_SpecTex, xlv_TEXCOORD0.xy);
- tmpvar_9 = texture2D (_MainTex, xlv_TEXCOORD0.xy).xyz;
- tmpvar_11 = (tmpvar_13.x * _SmoothnessIntensity);
- tmpvar_10 = (tmpvar_13.y * _MetallicIntensity);
- highp vec4 tmpvar_14;
- tmpvar_14.w = 1.0;
- tmpvar_14.xyz = xlv_TEXCOORD4;
- highp vec3 tmpvar_15;
- tmpvar_15 = (_LightMatrix0 * tmpvar_14).xyz;
- highp float tmpvar_16;
- tmpvar_16 = dot (tmpvar_15, tmpvar_15);
- lowp float tmpvar_17;
- tmpvar_17 = (texture2D (_LightTextureB0, vec2(tmpvar_16)).w * textureCube (_LightTexture0, tmpvar_15).w);
- worldN_3.x = dot (xlv_TEXCOORD1, tmpvar_12);
- worldN_3.y = dot (xlv_TEXCOORD2, tmpvar_12);
- worldN_3.z = dot (xlv_TEXCOORD3, tmpvar_12);
- tmpvar_1 = _LightColor0.xyz;
- tmpvar_2 = lightDir_6;
- mediump vec3 normal_18;
- normal_18 = worldN_3;
- tmpvar_1 = (tmpvar_1 * tmpvar_17);
- lowp vec3 tmpvar_19;
- mediump vec3 viewDir_20;
- viewDir_20 = worldViewDir_5;
- mediump vec4 c_21;
- lowp vec3 tmpvar_22;
- tmpvar_22 = normalize(worldN_3);
- mediump vec3 tmpvar_23;
- mediump vec3 albedo_24;
- albedo_24 = tmpvar_9;
- tmpvar_23 = (albedo_24 * (unity_ColorSpaceDielectricSpec.w - (tmpvar_10 * unity_ColorSpaceDielectricSpec.w)));
- tmpvar_19 = tmpvar_23;
- mediump vec3 diffColor_25;
- diffColor_25 = tmpvar_19;
- tmpvar_19 = diffColor_25;
- mediump vec3 diffColor_26;
- diffColor_26 = tmpvar_19;
- mediump vec3 normal_27;
- normal_27 = tmpvar_22;
- mediump vec3 tmpvar_28;
- mediump vec3 inVec_29;
- inVec_29 = (tmpvar_2 + viewDir_20);
- tmpvar_28 = (inVec_29 * inversesqrt(max (0.001,
- dot (inVec_29, inVec_29)
- )));
- mediump float tmpvar_30;
- tmpvar_30 = max (0.0, dot (tmpvar_2, tmpvar_28));
- mediump float tmpvar_31;
- tmpvar_31 = (1.0 - tmpvar_11);
- mediump float tmpvar_32;
- mediump float tmpvar_33;
- tmpvar_33 = max ((10.0 / log2(
- (((1.0 - tmpvar_31) * 0.968) + 0.03)
- )), -255.937);
- tmpvar_32 = (tmpvar_33 * tmpvar_33);
- c_21.xyz = (((diffColor_26 +
- (clamp (((
- (tmpvar_32 + 1.0)
- *
- pow (max (0.0, dot (normal_27, tmpvar_28)), tmpvar_32)
- ) / (
- ((unity_LightGammaCorrectionConsts.z * ((
- (tmpvar_30 * tmpvar_30)
- * tmpvar_11) + (tmpvar_31 * tmpvar_31))) * tmpvar_30)
- + 0.0001)), 0.0, 100.0) * mix (unity_ColorSpaceDielectricSpec.xyz, albedo_24, vec3(tmpvar_10)))
- ) * tmpvar_1) * max (0.0, dot (normal_18, tmpvar_2)));
- c_21.w = 0.0;
- c_4.xyz = c_21.xyz;
- c_4.w = 1.0;
- gl_FragData[0] = c_4;
- }
-
-
- #endif
- "
- }
- SubProgram "gles3 " {
- Keywords { "POINT_COOKIE" }
- "!!GLES3
- #ifdef VERTEX
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform mediump mat4 _LightMatrix0;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- in highp vec4 in_POSITION0;
- in highp vec4 in_TANGENT0;
- in highp vec3 in_NORMAL0;
- in highp vec4 in_TEXCOORD0;
- out highp vec4 vs_TEXCOORD0;
- out lowp vec3 vs_TEXCOORD1;
- out lowp vec3 vs_TEXCOORD2;
- out lowp vec3 vs_TEXCOORD3;
- out highp vec3 vs_TEXCOORD4;
- highp vec4 t0;
- highp vec3 t1;
- lowp vec3 t10_2;
- highp float t3;
- highp float t9;
- void main()
- {
- t0 = in_POSITION0.yyyy * glstate_matrix_mvp[1];
- t0 = glstate_matrix_mvp[0] * in_POSITION0.xxxx + t0;
- t0 = glstate_matrix_mvp[2] * in_POSITION0.zzzz + t0;
- gl_Position = glstate_matrix_mvp[3] * in_POSITION0.wwww + t0;
- vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
- vs_TEXCOORD0.zw = in_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
- t0.y = in_NORMAL0.x * _World2Object[0].x;
- t0.z = in_NORMAL0.x * _World2Object[1].x;
- t0.x = in_NORMAL0.x * _World2Object[2].x;
- t1.y = in_NORMAL0.y * _World2Object[0].y;
- t1.z = in_NORMAL0.y * _World2Object[1].y;
- t1.x = in_NORMAL0.y * _World2Object[2].y;
- t0.xyz = t0.xyz + t1.xyz;
- t1.y = in_NORMAL0.z * _World2Object[0].z;
- t1.z = in_NORMAL0.z * _World2Object[1].z;
- t1.x = in_NORMAL0.z * _World2Object[2].z;
- t0.xyz = t0.xyz + t1.xyz;
- t9 = dot(t0.xyz, t0.xyz);
- t9 = inversesqrt(t9);
- t0.xyz = vec3(t9) * t0.xyz;
- vs_TEXCOORD1.z = t0.y;
- t1.xyz = in_TANGENT0.yyy * _Object2World[1].yzx;
- t1.xyz = _Object2World[0].yzx * in_TANGENT0.xxx + t1.xyz;
- t1.xyz = _Object2World[2].yzx * in_TANGENT0.zzz + t1.xyz;
- t9 = dot(t1.xyz, t1.xyz);
- t9 = inversesqrt(t9);
- t1.xyz = vec3(t9) * t1.xyz;
- t10_2.xyz = t0.xyz * t1.xyz;
- t10_2.xyz = t0.zxy * t1.yzx + (-t10_2.xyz);
- t3 = in_TANGENT0.w * unity_WorldTransformParams.w;
- t10_2.xyz = vec3(t3) * t10_2.xyz;
- vs_TEXCOORD1.y = t10_2.x;
- vs_TEXCOORD1.x = t1.z;
- vs_TEXCOORD2.z = t0.z;
- vs_TEXCOORD3.z = t0.x;
- vs_TEXCOORD2.x = t1.x;
- vs_TEXCOORD3.x = t1.y;
- vs_TEXCOORD2.y = t10_2.y;
- vs_TEXCOORD3.y = t10_2.z;
- t0.xyz = in_POSITION0.yyy * _Object2World[1].xyz;
- t0.xyz = _Object2World[0].xyz * in_POSITION0.xxx + t0.xyz;
- t0.xyz = _Object2World[2].xyz * in_POSITION0.zzz + t0.xyz;
- vs_TEXCOORD4.xyz = _Object2World[3].xyz * in_POSITION0.www + t0.xyz;
- return;
- }
-
- #endif
- #ifdef FRAGMENT
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform mediump mat4 _LightMatrix0;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- uniform lowp sampler2D _MainTex;
- uniform lowp sampler2D _BumpMap;
- uniform lowp sampler2D _SpecTex;
- uniform lowp sampler2D _LightTextureB0;
- uniform lowp samplerCube _LightTexture0;
- in highp vec4 vs_TEXCOORD0;
- in lowp vec3 vs_TEXCOORD1;
- in lowp vec3 vs_TEXCOORD2;
- in lowp vec3 vs_TEXCOORD3;
- in highp vec3 vs_TEXCOORD4;
- layout(location = 0) out lowp vec4 SV_Target0;
- highp vec3 t0;
- mediump vec2 t16_0;
- lowp vec4 t10_0;
- highp vec3 t1;
- mediump vec4 t16_2;
- lowp vec3 t10_3;
- lowp vec3 t10_4;
- mediump vec3 t16_5;
- mediump vec3 t16_8;
- lowp vec2 t10_12;
- mediump float t16_14;
- highp float t18;
- highp float t19;
- mediump float t16_20;
- void main()
- {
- t0.xyz = (-vs_TEXCOORD4.xyz) + _WorldSpaceCameraPos.xyzx.xyz;
- t18 = dot(t0.xyz, t0.xyz);
- t18 = inversesqrt(t18);
- t1.xyz = (-vs_TEXCOORD4.xyz) + _WorldSpaceLightPos0.xyz;
- t19 = dot(t1.xyz, t1.xyz);
- t19 = inversesqrt(t19);
- t1.xyz = vec3(t19) * t1.xyz;
- t16_2.xyz = t0.xyz * vec3(t18) + t1.xyz;
- t16_20 = dot(t16_2.xyz, t16_2.xyz);
- t16_0.x = max(t16_20, 0.00100000005);
- t16_20 = inversesqrt(t16_0.x);
- t16_2.xyz = vec3(t16_20) * t16_2.xyz;
- t10_0.xyz = texture(_BumpMap, vs_TEXCOORD0.zw).xyz;
- t10_3.xyz = t10_0.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0);
- t10_4.x = dot(vs_TEXCOORD1.xyz, t10_3.xyz);
- t10_4.y = dot(vs_TEXCOORD2.xyz, t10_3.xyz);
- t10_4.z = dot(vs_TEXCOORD3.xyz, t10_3.xyz);
- t10_3.x = dot(t10_4.xyz, t10_4.xyz);
- t10_3.x = inversesqrt(t10_3.x);
- t10_3.xyz = t10_3.xxx * t10_4.xyz;
- t16_2.w = dot(t10_4.xyz, t1.xyz);
- t16_5.x = dot(t1.xyz, t16_2.xyz);
- t16_2.x = dot(t10_3.xyz, t16_2.xyz);
- t16_0.xy = max(t16_2.xw, vec2(0.0, 0.0));
- t16_2.x = log2(t16_0.x);
- t16_0.x = max(t16_5.x, 0.0);
- t10_12.xy = texture(_SpecTex, vs_TEXCOORD0.xy).xy;
- t16_8.x = (-t10_12.x) * _SmoothnessIntensity + 1.0;
- t10_3.xy = t10_12.xy * vec2(_SmoothnessIntensity, _MetallicIntensity);
- t16_14 = (-t16_8.x) + 1.0;
- t16_14 = t16_14 * 0.967999995 + 0.0299999993;
- t16_14 = log2(t16_14);
- t16_14 = 10.0 / t16_14;
- t16_8.y = max(t16_14, -255.936996);
- t16_8.xz = t16_8.xy * t16_8.xy;
- t16_14 = t16_8.y * t16_8.y + 1.0;
- t16_2.x = t16_2.x * t16_8.z;
- t16_2.x = exp2(t16_2.x);
- t16_2.x = t16_2.x * t16_14;
- t16_14 = t16_0.x * t16_0.x;
- t16_8.x = t16_14 * t10_3.x + t16_8.x;
- t16_8.x = t16_8.x * unity_LightGammaCorrectionConsts.z;
- t16_0.x = t16_8.x * t16_0.x + 9.99999975e-05;
- t16_0.x = t16_2.x / t16_0.x;
- t16_2.x = max(t16_0.x, 0.0);
- t16_2.x = min(t16_2.x, 100.0);
- t10_0.xzw = texture(_MainTex, vs_TEXCOORD0.xy).xyz;
- t16_8.xyz = t10_0.xzw + (-unity_ColorSpaceDielectricSpec.xyz);
- t16_8.xyz = t10_3.yyy * t16_8.xyz + unity_ColorSpaceDielectricSpec.xyz;
- t16_5.x = (-t10_3.y) * unity_ColorSpaceDielectricSpec.w + unity_ColorSpaceDielectricSpec.w;
- t16_2.xyz = t16_8.xyz * t16_2.xxx;
- t16_2.xyz = t10_0.xzw * t16_5.xxx + t16_2.xyz;
- t16_5.xyz = vs_TEXCOORD4.yyy * _LightMatrix0[1].xyz;
- t16_5.xyz = _LightMatrix0[0].xyz * vs_TEXCOORD4.xxx + t16_5.xyz;
- t16_5.xyz = _LightMatrix0[2].xyz * vs_TEXCOORD4.zzz + t16_5.xyz;
- t16_5.xyz = t16_5.xyz + _LightMatrix0[3].xyz;
- t16_0.x = dot(t16_5.xyz, t16_5.xyz);
- t10_12.x = texture(_LightTexture0, t16_5.xyz).w;
- t10_0.x = texture(_LightTextureB0, t16_0.xx).w;
- t16_0.x = t10_12.x * t10_0.x;
- t16_5.xyz = t16_0.xxx * _LightColor0.xyz;
- t16_2.xyz = t16_2.xyz * t16_5.xyz;
- t16_2.xyz = t16_0.yyy * t16_2.xyz;
- SV_Target0.xyz = t16_2.xyz;
- SV_Target0.w = 1.0;
- return;
- }
-
- #endif
- "
- }
- SubProgram "gles " {
- Keywords { "DIRECTIONAL_COOKIE" }
- "!!GLES
- #version 100
-
- #ifdef VERTEX
- attribute vec4 _glesTANGENT;
- attribute vec4 _glesVertex;
- attribute vec3 _glesNormal;
- attribute vec4 _glesMultiTexCoord0;
- uniform highp mat4 glstate_matrix_mvp;
- uniform highp mat4 _Object2World;
- uniform highp mat4 _World2Object;
- uniform highp vec4 unity_WorldTransformParams;
- uniform highp vec4 _MainTex_ST;
- uniform highp vec4 _BumpMap_ST;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- lowp float tangentSign_1;
- lowp vec3 worldTangent_2;
- lowp vec3 worldNormal_3;
- highp vec4 tmpvar_4;
- tmpvar_4.xy = ((_glesMultiTexCoord0.xy * _MainTex_ST.xy) + _MainTex_ST.zw);
- tmpvar_4.zw = ((_glesMultiTexCoord0.xy * _BumpMap_ST.xy) + _BumpMap_ST.zw);
- highp vec4 v_5;
- v_5.x = _World2Object[0].x;
- v_5.y = _World2Object[1].x;
- v_5.z = _World2Object[2].x;
- v_5.w = _World2Object[3].x;
- highp vec4 v_6;
- v_6.x = _World2Object[0].y;
- v_6.y = _World2Object[1].y;
- v_6.z = _World2Object[2].y;
- v_6.w = _World2Object[3].y;
- highp vec4 v_7;
- v_7.x = _World2Object[0].z;
- v_7.y = _World2Object[1].z;
- v_7.z = _World2Object[2].z;
- v_7.w = _World2Object[3].z;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize(((
- (v_5.xyz * _glesNormal.x)
- +
- (v_6.xyz * _glesNormal.y)
- ) + (v_7.xyz * _glesNormal.z)));
- worldNormal_3 = tmpvar_8;
- highp mat3 tmpvar_9;
- tmpvar_9[0] = _Object2World[0].xyz;
- tmpvar_9[1] = _Object2World[1].xyz;
- tmpvar_9[2] = _Object2World[2].xyz;
- highp vec3 tmpvar_10;
- tmpvar_10 = normalize((tmpvar_9 * _glesTANGENT.xyz));
- worldTangent_2 = tmpvar_10;
- highp float tmpvar_11;
- tmpvar_11 = (_glesTANGENT.w * unity_WorldTransformParams.w);
- tangentSign_1 = tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = (((worldNormal_3.yzx * worldTangent_2.zxy) - (worldNormal_3.zxy * worldTangent_2.yzx)) * tangentSign_1);
- lowp vec3 tmpvar_13;
- tmpvar_13.x = worldTangent_2.x;
- tmpvar_13.y = tmpvar_12.x;
- tmpvar_13.z = worldNormal_3.x;
- lowp vec3 tmpvar_14;
- tmpvar_14.x = worldTangent_2.y;
- tmpvar_14.y = tmpvar_12.y;
- tmpvar_14.z = worldNormal_3.y;
- lowp vec3 tmpvar_15;
- tmpvar_15.x = worldTangent_2.z;
- tmpvar_15.y = tmpvar_12.z;
- tmpvar_15.z = worldNormal_3.z;
- gl_Position = (glstate_matrix_mvp * _glesVertex);
- xlv_TEXCOORD0 = tmpvar_4;
- xlv_TEXCOORD1 = tmpvar_13;
- xlv_TEXCOORD2 = tmpvar_14;
- xlv_TEXCOORD3 = tmpvar_15;
- xlv_TEXCOORD4 = (_Object2World * _glesVertex).xyz;
- }
-
-
- #endif
- #ifdef FRAGMENT
- uniform highp vec3 _WorldSpaceCameraPos;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform lowp vec4 _LightColor0;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform sampler2D _LightTexture0;
- uniform mediump mat4 _LightMatrix0;
- uniform sampler2D _MainTex;
- uniform sampler2D _BumpMap;
- uniform sampler2D _SpecTex;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- varying highp vec4 xlv_TEXCOORD0;
- varying lowp vec3 xlv_TEXCOORD1;
- varying lowp vec3 xlv_TEXCOORD2;
- varying lowp vec3 xlv_TEXCOORD3;
- varying highp vec3 xlv_TEXCOORD4;
- void main ()
- {
- mediump vec3 tmpvar_1;
- mediump vec3 tmpvar_2;
- lowp vec3 worldN_3;
- lowp vec4 c_4;
- lowp vec3 worldViewDir_5;
- lowp vec3 lightDir_6;
- mediump vec3 tmpvar_7;
- tmpvar_7 = _WorldSpaceLightPos0.xyz;
- lightDir_6 = tmpvar_7;
- highp vec3 tmpvar_8;
- tmpvar_8 = normalize((_WorldSpaceCameraPos - xlv_TEXCOORD4));
- worldViewDir_5 = tmpvar_8;
- lowp vec3 tmpvar_9;
- mediump float tmpvar_10;
- mediump float tmpvar_11;
- lowp vec3 tmpvar_12;
- tmpvar_12 = ((texture2D (_BumpMap, xlv_TEXCOORD0.zw).xyz * 2.0) - 1.0);
- lowp vec4 tmpvar_13;
- tmpvar_13 = texture2D (_SpecTex, xlv_TEXCOORD0.xy);
- tmpvar_9 = texture2D (_MainTex, xlv_TEXCOORD0.xy).xyz;
- tmpvar_11 = (tmpvar_13.x * _SmoothnessIntensity);
- tmpvar_10 = (tmpvar_13.y * _MetallicIntensity);
- highp vec4 tmpvar_14;
- tmpvar_14.w = 1.0;
- tmpvar_14.xyz = xlv_TEXCOORD4;
- highp vec2 tmpvar_15;
- tmpvar_15 = (_LightMatrix0 * tmpvar_14).xy;
- lowp float tmpvar_16;
- tmpvar_16 = texture2D (_LightTexture0, tmpvar_15).w;
- worldN_3.x = dot (xlv_TEXCOORD1, tmpvar_12);
- worldN_3.y = dot (xlv_TEXCOORD2, tmpvar_12);
- worldN_3.z = dot (xlv_TEXCOORD3, tmpvar_12);
- tmpvar_1 = _LightColor0.xyz;
- tmpvar_2 = lightDir_6;
- mediump vec3 normal_17;
- normal_17 = worldN_3;
- tmpvar_1 = (tmpvar_1 * tmpvar_16);
- lowp vec3 tmpvar_18;
- mediump vec3 viewDir_19;
- viewDir_19 = worldViewDir_5;
- mediump vec4 c_20;
- lowp vec3 tmpvar_21;
- tmpvar_21 = normalize(worldN_3);
- mediump vec3 tmpvar_22;
- mediump vec3 albedo_23;
- albedo_23 = tmpvar_9;
- tmpvar_22 = (albedo_23 * (unity_ColorSpaceDielectricSpec.w - (tmpvar_10 * unity_ColorSpaceDielectricSpec.w)));
- tmpvar_18 = tmpvar_22;
- mediump vec3 diffColor_24;
- diffColor_24 = tmpvar_18;
- tmpvar_18 = diffColor_24;
- mediump vec3 diffColor_25;
- diffColor_25 = tmpvar_18;
- mediump vec3 normal_26;
- normal_26 = tmpvar_21;
- mediump vec3 tmpvar_27;
- mediump vec3 inVec_28;
- inVec_28 = (tmpvar_2 + viewDir_19);
- tmpvar_27 = (inVec_28 * inversesqrt(max (0.001,
- dot (inVec_28, inVec_28)
- )));
- mediump float tmpvar_29;
- tmpvar_29 = max (0.0, dot (tmpvar_2, tmpvar_27));
- mediump float tmpvar_30;
- tmpvar_30 = (1.0 - tmpvar_11);
- mediump float tmpvar_31;
- mediump float tmpvar_32;
- tmpvar_32 = max ((10.0 / log2(
- (((1.0 - tmpvar_30) * 0.968) + 0.03)
- )), -255.937);
- tmpvar_31 = (tmpvar_32 * tmpvar_32);
- c_20.xyz = (((diffColor_25 +
- (clamp (((
- (tmpvar_31 + 1.0)
- *
- pow (max (0.0, dot (normal_26, tmpvar_27)), tmpvar_31)
- ) / (
- ((unity_LightGammaCorrectionConsts.z * ((
- (tmpvar_29 * tmpvar_29)
- * tmpvar_11) + (tmpvar_30 * tmpvar_30))) * tmpvar_29)
- + 0.0001)), 0.0, 100.0) * mix (unity_ColorSpaceDielectricSpec.xyz, albedo_23, vec3(tmpvar_10)))
- ) * tmpvar_1) * max (0.0, dot (normal_17, tmpvar_2)));
- c_20.w = 0.0;
- c_4.xyz = c_20.xyz;
- c_4.w = 1.0;
- gl_FragData[0] = c_4;
- }
-
-
- #endif
- "
- }
- SubProgram "gles3 " {
- Keywords { "DIRECTIONAL_COOKIE" }
- "!!GLES3
- #ifdef VERTEX
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform mediump mat4 _LightMatrix0;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- in highp vec4 in_POSITION0;
- in highp vec4 in_TANGENT0;
- in highp vec3 in_NORMAL0;
- in highp vec4 in_TEXCOORD0;
- out highp vec4 vs_TEXCOORD0;
- out lowp vec3 vs_TEXCOORD1;
- out lowp vec3 vs_TEXCOORD2;
- out lowp vec3 vs_TEXCOORD3;
- out highp vec3 vs_TEXCOORD4;
- highp vec4 t0;
- highp vec3 t1;
- lowp vec3 t10_2;
- highp float t3;
- highp float t9;
- void main()
- {
- t0 = in_POSITION0.yyyy * glstate_matrix_mvp[1];
- t0 = glstate_matrix_mvp[0] * in_POSITION0.xxxx + t0;
- t0 = glstate_matrix_mvp[2] * in_POSITION0.zzzz + t0;
- gl_Position = glstate_matrix_mvp[3] * in_POSITION0.wwww + t0;
- vs_TEXCOORD0.xy = in_TEXCOORD0.xy * _MainTex_ST.xy + _MainTex_ST.zw;
- vs_TEXCOORD0.zw = in_TEXCOORD0.xy * _BumpMap_ST.xy + _BumpMap_ST.zw;
- t0.y = in_NORMAL0.x * _World2Object[0].x;
- t0.z = in_NORMAL0.x * _World2Object[1].x;
- t0.x = in_NORMAL0.x * _World2Object[2].x;
- t1.y = in_NORMAL0.y * _World2Object[0].y;
- t1.z = in_NORMAL0.y * _World2Object[1].y;
- t1.x = in_NORMAL0.y * _World2Object[2].y;
- t0.xyz = t0.xyz + t1.xyz;
- t1.y = in_NORMAL0.z * _World2Object[0].z;
- t1.z = in_NORMAL0.z * _World2Object[1].z;
- t1.x = in_NORMAL0.z * _World2Object[2].z;
- t0.xyz = t0.xyz + t1.xyz;
- t9 = dot(t0.xyz, t0.xyz);
- t9 = inversesqrt(t9);
- t0.xyz = vec3(t9) * t0.xyz;
- vs_TEXCOORD1.z = t0.y;
- t1.xyz = in_TANGENT0.yyy * _Object2World[1].yzx;
- t1.xyz = _Object2World[0].yzx * in_TANGENT0.xxx + t1.xyz;
- t1.xyz = _Object2World[2].yzx * in_TANGENT0.zzz + t1.xyz;
- t9 = dot(t1.xyz, t1.xyz);
- t9 = inversesqrt(t9);
- t1.xyz = vec3(t9) * t1.xyz;
- t10_2.xyz = t0.xyz * t1.xyz;
- t10_2.xyz = t0.zxy * t1.yzx + (-t10_2.xyz);
- t3 = in_TANGENT0.w * unity_WorldTransformParams.w;
- t10_2.xyz = vec3(t3) * t10_2.xyz;
- vs_TEXCOORD1.y = t10_2.x;
- vs_TEXCOORD1.x = t1.z;
- vs_TEXCOORD2.z = t0.z;
- vs_TEXCOORD3.z = t0.x;
- vs_TEXCOORD2.x = t1.x;
- vs_TEXCOORD3.x = t1.y;
- vs_TEXCOORD2.y = t10_2.y;
- vs_TEXCOORD3.y = t10_2.z;
- t0.xyz = in_POSITION0.yyy * _Object2World[1].xyz;
- t0.xyz = _Object2World[0].xyz * in_POSITION0.xxx + t0.xyz;
- t0.xyz = _Object2World[2].xyz * in_POSITION0.zzz + t0.xyz;
- vs_TEXCOORD4.xyz = _Object2World[3].xyz * in_POSITION0.www + t0.xyz;
- return;
- }
-
- #endif
- #ifdef FRAGMENT
- #version 300 es
- precision highp float;
- precision highp int;
- uniform vec4 _Time;
- uniform vec4 _SinTime;
- uniform vec4 _CosTime;
- uniform vec4 unity_DeltaTime;
- uniform vec3 _WorldSpaceCameraPos;
- uniform vec4 _ProjectionParams;
- uniform vec4 _ScreenParams;
- uniform vec4 _ZBufferParams;
- uniform vec4 unity_OrthoParams;
- uniform vec4 unity_CameraWorldClipPlanes[6];
- uniform mat4 unity_CameraProjection;
- uniform mat4 unity_CameraInvProjection;
- uniform mediump vec4 _WorldSpaceLightPos0;
- uniform vec4 _LightPositionRange;
- uniform vec4 unity_4LightPosX0;
- uniform vec4 unity_4LightPosY0;
- uniform vec4 unity_4LightPosZ0;
- uniform mediump vec4 unity_4LightAtten0;
- uniform mediump vec4 unity_LightColor[8];
- uniform vec4 unity_LightPosition[8];
- uniform mediump vec4 unity_LightAtten[8];
- uniform vec4 unity_SpotDirection[8];
- uniform mediump vec4 unity_SHAr;
- uniform mediump vec4 unity_SHAg;
- uniform mediump vec4 unity_SHAb;
- uniform mediump vec4 unity_SHBr;
- uniform mediump vec4 unity_SHBg;
- uniform mediump vec4 unity_SHBb;
- uniform mediump vec4 unity_SHC;
- uniform mediump vec3 unity_LightColor0;
- uniform mediump vec3 unity_LightColor1;
- uniform mediump vec3 unity_LightColor2;
- uniform mediump vec3 unity_LightColor3;
- uniform vec4 unity_ShadowSplitSpheres[4];
- uniform vec4 unity_ShadowSplitSqRadii;
- uniform vec4 unity_LightShadowBias;
- uniform vec4 _LightSplitsNear;
- uniform vec4 _LightSplitsFar;
- uniform mat4 unity_World2Shadow[4];
- uniform mediump vec4 _LightShadowData;
- uniform vec4 unity_ShadowFadeCenterAndType;
- uniform mat4 glstate_matrix_mvp;
- uniform mat4 glstate_matrix_modelview0;
- uniform mat4 glstate_matrix_invtrans_modelview0;
- uniform mat4 _Object2World;
- uniform mat4 _World2Object;
- uniform vec4 unity_LODFade;
- uniform vec4 unity_WorldTransformParams;
- uniform mat4 glstate_matrix_transpose_modelview0;
- uniform mat4 glstate_matrix_projection;
- uniform lowp vec4 glstate_lightmodel_ambient;
- uniform mat4 unity_MatrixV;
- uniform mat4 unity_MatrixVP;
- uniform lowp vec4 unity_AmbientSky;
- uniform lowp vec4 unity_AmbientEquator;
- uniform lowp vec4 unity_AmbientGround;
- uniform lowp vec4 unity_FogColor;
- uniform vec4 unity_FogParams;
- uniform vec4 unity_LightmapST;
- uniform vec4 unity_DynamicLightmapST;
- uniform vec4 unity_SpecCube0_BoxMax;
- uniform vec4 unity_SpecCube0_BoxMin;
- uniform vec4 unity_SpecCube0_ProbePosition;
- uniform mediump vec4 unity_SpecCube0_HDR;
- uniform vec4 unity_SpecCube1_BoxMax;
- uniform vec4 unity_SpecCube1_BoxMin;
- uniform vec4 unity_SpecCube1_ProbePosition;
- uniform mediump vec4 unity_SpecCube1_HDR;
- uniform lowp vec4 unity_ColorSpaceGrey;
- uniform lowp vec4 unity_ColorSpaceDouble;
- uniform mediump vec4 unity_ColorSpaceDielectricSpec;
- uniform mediump vec4 unity_ColorSpaceLuminance;
- uniform mediump vec4 unity_Lightmap_HDR;
- uniform mediump vec4 unity_DynamicLightmap_HDR;
- uniform lowp vec4 _LightColor0;
- uniform lowp vec4 _SpecColor;
- uniform mediump vec4 unity_LightGammaCorrectionConsts;
- uniform mediump mat4 _LightMatrix0;
- uniform lowp float _MetallicIntensity;
- uniform lowp float _SmoothnessIntensity;
- uniform lowp float _Cubepower;
- uniform vec4 _MainTex_ST;
- uniform vec4 _BumpMap_ST;
- uniform lowp sampler2D _MainTex;
- uniform lowp sampler2D _BumpMap;
- uniform lowp sampler2D _SpecTex;
- uniform lowp sampler2D _LightTexture0;
- in highp vec4 vs_TEXCOORD0;
- in lowp vec3 vs_TEXCOORD1;
- in lowp vec3 vs_TEXCOORD2;
- in lowp vec3 vs_TEXCOORD3;
- in highp vec3 vs_TEXCOORD4;
- layout(location = 0) out lowp vec4 SV_Target0;
- highp vec3 t0;
- mediump float t16_0;
- lowp vec3 t10_0;
- mediump vec4 t16_1;
- lowp vec3 t10_2;
- lowp vec3 t10_3;
- mediump vec3 t16_4;
- mediump vec2 t16_5;
- lowp vec3 t10_5;
- mediump vec3 t16_6;
- lowp vec2 t10_10;
- mediump float t16_11;
- highp float t15;
- mediump float t16_16;
- void main()
- {
- t0.xyz = (-vs_TEXCOORD4.xyz) + _WorldSpaceCameraPos.xyzx.xyz;
- t15 = dot(t0.xyz, t0.xyz);
- t15 = inversesqrt(t15);
- t16_1.xyz = t0.xyz * vec3(t15) + _WorldSpaceLightPos0.xyz;
- t16_16 = dot(t16_1.xyz, t16_1.xyz);
- t16_0 = max(t16_16, 0.00100000005);
- t16_16 = inversesqrt(t16_0);
- t16_1.xyz = vec3(t16_16) * t16_1.xyz;
- t10_0.xyz = texture(_BumpMap, vs_TEXCOORD0.zw).xyz;
- t10_2.xyz = t10_0.xyz * vec3(2.0, 2.0, 2.0) + vec3(-1.0, -1.0, -1.0);
- t10_3.x = dot(vs_TEXCOORD1.xyz, t10_2.xyz);
- t10_3.y = dot(vs_TEXCOORD2.xyz, t10_2.xyz);
- t10_3.z = dot(vs_TEXCOORD3.xyz, t10_2.xyz);
- t10_2.x = dot(t10_3.xyz, t10_3.xyz);
- t10_2.x = inversesqrt(t10_2.x);
- t10_2.xyz = t10_2.xxx * t10_3.xyz;
- t16_16 = dot(t10_3.xyz, _WorldSpaceLightPos0.xyz);
- t16_0 = max(t16_16, 0.0);
- t16_1.w = dot(t10_2.xyz, t16_1.xyz);
- t16_1.x = dot(_WorldSpaceLightPos0.xyz, t16_1.xyz);
- t16_5.xy = max(t16_1.xw, vec2(0.0, 0.0));
- t16_1.x = log2(t16_5.y);
- t10_10.xy = texture(_SpecTex, vs_TEXCOORD0.xy).xy;
- t16_6.x = (-t10_10.x) * _SmoothnessIntensity + 1.0;
- t10_2.xy = t10_10.xy * vec2(_SmoothnessIntensity, _MetallicIntensity);
- t16_11 = (-t16_6.x) + 1.0;
- t16_11 = t16_11 * 0.967999995 + 0.0299999993;
- t16_11 = log2(t16_11);
- t16_11 = 10.0 / t16_11;
- t16_6.y = max(t16_11, -255.936996);
- t16_6.xz = t16_6.xy * t16_6.xy;
- t16_11 = t16_6.y * t16_6.y + 1.0;
- t16_1.x = t16_1.x * t16_6.z;
- t16_1.x = exp2(t16_1.x);
- t16_1.x = t16_1.x * t16_11;
- t16_11 = t16_5.x * t16_5.x;
- t16_6.x = t16_11 * t10_2.x + t16_6.x;
- t16_6.x = t16_6.x * unity_LightGammaCorrectionConsts.z;
- t16_5.x = t16_6.x * t16_5.x + 9.99999975e-05;
- t16_5.x = t16_1.x / t16_5.x;
- t16_1.x = max(t16_5.x, 0.0);
- t16_1.x = min(t16_1.x, 100.0);
- t10_5.xyz = texture(_MainTex, vs_TEXCOORD0.xy).xyz;
- t16_6.xyz = t10_5.xyz + (-unity_ColorSpaceDielectricSpec.xyz);
- t16_6.xyz = t10_2.yyy * t16_6.xyz + unity_ColorSpaceDielectricSpec.xyz;
- t16_4.x = (-t10_2.y) * unity_ColorSpaceDielectricSpec.w + unity_ColorSpaceDielectricSpec.w;
- t16_1.xyz = t16_6.xyz * t16_1.xxx;
- t16_1.xyz = t10_5.xyz * t16_4.xxx + t16_1.xyz;
- t16_4.xy = vs_TEXCOORD4.yy * _LightMatrix0[1].xy;
- t16_4.xy = _LightMatrix0[0].xy * vs_TEXCOORD4.xx + t16_4.xy;
- t16_4.xy = _LightMatrix0[2].xy * vs_TEXCOORD4.zz + t16_4.xy;
- t16_4.xy = t16_4.xy + _LightMatrix0[3].xy;
- t10_5.x = texture(_LightTexture0, t16_4.xy).w;
- t16_4.xyz = t10_5.xxx * _LightColor0.xyz;
- t16_1.xyz = t16_1.xyz * t16_4.xyz;
- t16_1.xyz = vec3(t16_0) * t16_1.xyz;
- SV_Target0.xyz = t16_1.xyz;
- SV_Target0.w = 1.0;
- return;
- }
-
- #endif
- "
- }
- }
- Program "fp" {
- SubProgram "gles " {
- Keywords { "POINT" }
- "!!GLES"
- }
- SubProgram "gles3 " {
- Keywords { "POINT" }
- "!!GLES3"
- }
- SubProgram "gles " {
- Keywords { "DIRECTIONAL" }
- "!!GLES"
- }
- SubProgram "gles3 " {
- Keywords { "DIRECTIONAL" }
- "!!GLES3"
- }
- SubProgram "gles " {
- Keywords { "SPOT" }
- "!!GLES"
- }
- SubProgram "gles3 " {
- Keywords { "SPOT" }
- "!!GLES3"
- }
- SubProgram "gles " {
- Keywords { "POINT_COOKIE" }
- "!!GLES"
- }
- SubProgram "gles3 " {
- Keywords { "POINT_COOKIE" }
- "!!GLES3"
- }
- SubProgram "gles " {
- Keywords { "DIRECTIONAL_COOKIE" }
- "!!GLES"
- }
- SubProgram "gles3 " {
- Keywords { "DIRECTIONAL_COOKIE" }
- "!!GLES3"
- }
- }
- }
- }
- Fallback Off
- }